Mac OS X terminalinden renkli çıktıyı kopyala


37

Terminalimde güzel renkli bir çıktı görüyorum.

Terminal "Metni Farklı Ver" komutuna sahiptir ancak renkleri olmayan düz metin dosyasını kaydeder. Kopyala ve yapıştır ile aynı.

Renkler dahil olmak üzere terminal çıkışını korumanın bir yolunu biliyor musunuz?


Bu sizin için önemliyse, lütfen Apple’a apple.com/feedback/macosx.html (Uygulamalar / Yardımcı Programlar geribildirim alanı) veya developer.apple.com/bugreporter (ücretsiz bir geliştirici hesabı için kaydolmayı gerektirir ) aracılığıyla bildirin .
Chris Sayfa

Terminal artık, Edit -> Copy SpecialDüz Metin ve zengin metin seçenekleri arasında geçiş yapabileceğiniz altındaki temel Cmd-c copy komutu için seçenekler listesine sahiptir .
Joshua Goldberg

Yanıtlar:


12

Terminal'de metin seçip sonra kopyalayıp ardından zengin metni destekleyen bir uygulamaya (örneğin Mail, TextEdit, Word) yapıştırırsanız, metin renginin korunacağı anlaşılır.

Mail ve TextEdit'te terminalin arka plan renginin de yapıştırıldığı anlaşılmaktadır; Word'de, öyle değil. Bu tutarsızlığı nasıl açıklayacağımdan emin değilim.


OS X'in hangi sürümünü kullanıyorsunuz? Bu 10.7.4'te işe yaramıyor.
Wildcard

1
@Wildcard 10.11.3'te benim için çalışıyor. Bunu yazarken hangi sürümü kullandığımı hatırlamıyorum
Max Nanasy

1
Postaya yapıştırmak için normal Kopya'yı kullanmada sorun yaşadım - renkler kaybolmuştu - ancak Düzenle -> Özel Kopyala -> Arka Plan Rengi Olmadan Kopyala'yı kullandım (yine de tercih ettim). Dikdörtgen bir seçim oluşturmak için seçenek-drag ile bile çalıştı. (10.12.6)
Joshua Goldberg

31

Bir soruyu göndermenin, yaratıcılığı nasıl arttırdığı şaşırtıcı.

"Yazdır" iletişim kutusunu açıp PDF'ye kaydedebilir ve ardından renkli çıktıyı PDF'den kopyalayabilirim.

Ayrıca iTerm2 terminal uygulaması CMDOPTCbiçimlendirme ile kopyalayan bir kısayol vardır.


1
Bu çözüm, bir Keynote sunumunda terminal örnekleri oluştururken renkli çıktıyı korumak için mükemmeldir. Teşekkürler!
beausmith

1
@Wojtek: Rica ederim, cevabımı kabul etmemeniz bana biraz itibara mal olsa bile ... ;-)
martineau

İTerm2 kısayolu için +1! Neden bu meny'de bile değil ???
Lundberg Per

1
Bu ... uzun zamandan beri kesinlikle en faydalı bulgundur !!!
haavee

Eğer varsa ⌘ + ⌥ + CiTerm2, açık Keynote, gelen ve yapıştırın, bu tablo veri olarak içe olacaktır. Verileri yararlı bir biçimde nasıl biçimlendirebileceğimi henüz bilmiyordum, ancak orada potansiyel var.
Kevin Suttle,

8

Renkli çıktısını panoya bu şekilde yapıştırmayı deneyebilirsiniz:

% command_which_produces_colors | pbcopy -prefer rtf

bu da bazı rtf'leri (muhtemelen renklendirilmiş ve biçimlendirilmiş) macos kartonuna doldurur. panoya erişmek için richtext'i anlayan başkalarını kullanabilirsiniz.

bu açıkçası "fareyle seç" ile aynı değil, belki de çekim yapmaya değer.


İşe yaramaz. İlk sorun command_which_produces_colors'un konsola yazdırmadığını fark etmesi ve böylece renkleri atlaması. Bazılarını yine de renkler yazdırmaya zorlayabilirim, bu nedenle aşağıdaki komut terminale renkler verir: CLICOLOR = 1 CLICOLOR_FORCE = 1 ls -alh | ancak pbcopy hiçbir rengi kopyalamıyor: CLICOLOR = 1 CLICOLOR_FORCE = 1 ls -alh | pbcopy-pbcopy / pbpaste komutları için ön rtf +1. Uzun dosyaları panoya kopyalamak için harika: "pbcopy <longfile.txt"
Wojtek Kruszewski 13:11

1
Bunu denediğimde, eğer command_which_produces_colorsANSI kodları üretiyorsa, o zaman pbcopy -Prefer rtfsadece ANSI kodlarını içeren metni kopyalar (örneğin [0;34mTextmavi kopyalar Text). ANSI kodlarını RTF'ye dönüştürmek bir ara adım olarak gerekli olabilir gibi görünüyor.
Max Nanasy

8

@ Akira'nın cevabına dayanarak , aşağıdakileri buldum:

  1. İndir kaynak paketi için ansifilter
  2. Ansifilter oluşturmak ve kurmak için INSTALL altındaki talimatları izleyin.
  3. Koşmak <command that produces colors> | ansifilter --rtf | pbcopy -Prefer rtf
    • <command that produces colors>Çıkışı borulu olsa bile renk üretmeye zorlamak için argümanları geçmeniz gerekebilir , örneğin ls --color=alwayssadecels
  4. Daha sonra zengin metni destekleyen bir uygulamaya yapıştırabilirsiniz (örn. Mail, TextEdit, Word)

2

OS X, ekranı kopyalamak için birkaç klavye kısayoluna (kısayol tuşu) sahiptir. Bunlar, ekran görüntülerini masaüstünde bir jpg dosyası olarak kaydeder. İşte bunların bir listesi:

Cmd-Shift-3                             Take snapshot of the whole screen
Cmd-Shift-4                             Take snapshot of the selected area
Cmd-Shift-4-Spacebar                    Take picture of a window
Escape                                  Cancel
Hold Spacebar after Drawing the region  Move the selected area
Hold Option                             Resize selected area
Hold Shift                              Resize selected area horizontally 
                                        or vertically 

Uygulamalarda bulunan bir "Grab" uygulaması da var | Aynı işi yapan Yardımcı Programlar klasörünün yanı sıra gecikme gibi bazı ekstra özellikler de vardır.

Güncelleştirme

Snow Leopard'da (10.6.8), varsayılan ekran görüntüsü formatı, jpg değil png'dir, ancak bu, 3. parti TinkerTool tercih ayarları yardımcı programını kullanarak pdf dahil olmak üzere, diğerlerinden herhangi birine değiştirilebilir .


9
bir .jpg “saf” metin kadar hoş değildir.
akira

3
Seçim alanı için daha az bilinen kısayollar için +1.
Daniel Beck

@akira: OP renkleri istiyor - katıştırılmış ANSI kaçış dizilerini saymazsanız düz metin biçiminde yapamayacağınız şeyler - ve bunları bir terminal emülatörü gibi yorumlamak için bir şeye ihtiyacınız olacak, ama sonra geri döneceksiniz. asıl sorun.
martineau

2
@martineau: Bir tarayıcıdan veya bir kelimeden veya xyz'den kopyaladığınızda pano renklerinin özelliklerine bağlı olarak işaretleme (ör. richtext veya html) ile kaydedilir. ve, işaretlenmiş parçacıkları alan uygulamaya bağlı olarak renkleri ve metni oldukça iyi gösterebilirler. terminal ascii kaçış sekanslarını alır, doğru, ancak sadece ascii kaçış sekanslarını aldığı için a) onları saklamak zorunda olduğu anlamına gelmez a) onları saklamak (örneğin, html-terminali düşünmek b) b) seçilen metni birçok yönden geliştirebilir (yapabilirsiniz farklı mime türlerini aynı anda iyi bir panoya koyun).
akira

3
@akira Bir JPG, ekran görüntüsü gibi bir şey için gerçekten zayıf bir görüntü formatı seçimidir. Tek renkli geniş alanlar ve her tarafta keskin tek piksel çizgiler vb. Neyse ki, Apple o kadar aptal değil ve kaydettiği dosya bir PNG. lbrandy.com/blog/2008/10/my-first-and-last-webcomic
rjmunro

0

Bunu yapmamın yolu mükemmel Textmate 2 uygulaması.

  1. R grafik penceresinden kopyala
  2. Boş bir metin arkadaşı belgesine yapıştırın
  3. Belge türünü tercihinize göre R Konsolu veya R olarak değiştirin
  4. Stili olan tmbundle (shift-cmd-c) kullanın
  5. Posta uygulaması oluşturma penceresine yapıştır

Shift-cmd-c'nin doğrudan R konsolu penceresinde çalışmasının iyi olacağını söylemeliyim.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.