Bir Microsoft Word belgesine kaynak kodu örnekleri eklemenin en iyi yolu nedir?


131

Kaynak kod örneklerini içerecek bazı belgeler yazmam gerekiyor. Örneklerden bazıları IDE'den yazılacak ve diğerleri yerinde yazılacaktır. Örneklerim öncelikle Java'da.

LaTeX'e alışkın biri olarak bunu Word'de yapmak son derece acı vericidir. Ancak bunun için Word'e bağlıyım. Gördüğüm tek seçenek:

  1. Belgeye yazın veya kopyalayın, ardından sabit bir yazı tipi kullanın, biçimlendirmeyi düzenleyin ve Word'ün sizin için büyük harf kullanmamasını umun. Söylemeye gerek yok, bu bok gibi görünüyor.
  2. IDE'den kaynak kodun ekran görüntülerini kopyalayıp yapıştırın. En azından renkleri koruyorum. Ancak yazı tipi boyutumu değiştirirsem, mahvolurum. Ayrıca sayfa sınırlarını da aştım. Ve itiraf edelim, Word bir belgedeki birden çok görüntüyü yönetmekte pek iyi değil.
  3. HTML yazın (burada gerçekten bir seçenek değil)

Bunu yapmanın daha iyi (ve ideal olarak taşınabilir) bir yolu var mı? LaTeX ortamına benzer en azından bir tür sözlü stil var mı? RTF olarak kopyalayıp yapıştırabileceğim en azından güzel bir yazıcı var mı?


Russel: Anladığımdan emin değilim.
Uri

2
Bunun muhtemelen süper kullanıcı için daha uygun olduğunu düşünüyorum. Belgeye eklediğiniz şeyin kod olması, bunu bir programlama sorusu yapmaz.
danben

2
@danben: Sanırım. Word belgelerindeki kod örneklerinin çoğu programcının günlük işlerinde yaptıkları bir şey olduğunu düşündüm.
Uri

1
Programda Word veya Dosya biçimine bağlı mısınız?
Ken

Yanıtlar:


186

Microsoft için ücretsiz çalışmaktan kesinlikle nefret ediyorum ve küçümsüyorum, çünkü onca milyarlarca dolardan sonra HALA lanet web sitelerinde ekran görüntüleriyle böyle şeyler hakkında doğru kılavuzlara sahip değiller.

Her neyse, burada sözdizimi renklendirme için Notepad ++ ve altyazılı bir TextBox kullanan Word 2010'da hızlı bir kılavuz:

  1. Ekle / Metin Kutusu / Basit Metin Kutusu'nu seçin
    01word
  2. Varsayılan bir metin kutusu eklenir
    02word
  3. NPP'ye geçin, kodunuzun sözdizimi renklendirmesi için dili seçin, Eklentiler / NPPExport / RTF'yi panoya kopyala'ya gidin
    03npp
  4. Kelimeye geri dönün ve metin kutusuna yapıştırın - çok küçük olabilir ...
    04word
  5. ... bu yüzden boyutunu değiştirmeniz gerekebilir
    05word
  6. Metin kutusunu seçtikten sonra üzerine sağ tıklayın, ardından Başlık Ekle ... seçeneğini seçin.
    06word
  7. Başlık menüsünde, henüz etiketiniz yoksa Yeni Etiket'i tıklayın ve yeni etiketi "Kod" olarak ayarlayın, Tamam'ı tıklayın ...
    07word
  8. ... ardından Başlık iletişim kutusunda, etiketi Kod olarak değiştirin ve Tamam'a basın
    08word
  9. Son olarak, yeni oluşturulan başlık kutusuna başlığınızı yazın
    09word

Çapraz referans başlığını yaptığınızda, bu sorunun nasıl çözüleceğine dair kodun tamamını kendisi ekler?
MonsterMMORPG

1
Word 2013'te metin koddur, düz metin olarak yapıştırılır, Notepad ++ biçimini korumanın bir yolu yoktur
Jose Nobile

2
@JoseNobile Notepad ++ 'da NppExport eklentisini kullanmanız gerekir
NeilenMarais

1
Ayrıca Android Studio, Visual Studio ve Eclipse ile de çalışır.
Teocci

Başlangıçta aynı tekniği kullandım, ancak o zamandan beri 1x1'lik bir tablo kullanmaya geçtim çünkü metin kutularının konumlandırılması büyük bir sıkıntı olduğunu keşfettim. "Yukarı ve aşağı" yı denedim, böylece metin yalnızca önce ve sonra olacaktı ve Word, kutuyu sihirli bir şekilde yukarı veya aşağı hareket ettiriyordu, bazen başlık görünmüyordu, ah ne acı. Bugün başka bir SO QA'ya dayalı olarak tabloları kullanmaya başladım, şimdiye kadar iyi çalışıyor. Yeni bir başlık etiketi türü oluşturuyorum "Liste".
Oliver

26

Geçenlerde bu gönderiye rastladım ve bazı yararlı ipuçları buldum. Ancak, ihtiyaçlarıma uyan tamamen farklı bir yaklaşım kullanmaya başladım. Yaklaşımı ve neden bu yaklaşımı seçtiğime dair gerekçelerimi paylaşıyorum. Gönderi istediğimden daha uzun, ancak ekran görüntülerinin her zaman yardımcı olduğuna inanıyorum. Umarım cevap birisi için yararlı olur.

Gereksinimlerim şunlardı:

  1. Daha kolay görünürlük ve kod ile diğer metinlerin farklılaştırılması için sözdizimi vurgulayarak bir word belgesine kod parçacıkları ekleyin.
  2. Kod parçacığı, diğer metinle aynı hizada olacaktır.
  3. Kod parçacığı, fazladan çaba göstermeden sayfalarda sorunsuz bir şekilde bölünecektir.
  4. Kod pasajının güzel bir sınırı olacaktır.
  5. Kod parçacığında yazım denetimi devre dışı bırakılacaktır.

Yaklaşımım aşağıda listelendiği gibidir:

  1. Yukarıdaki sözdizimi vurgulama gereksinimi 1'i elde etmek için harici aracı kullanın. Yukarıda anlatıldığı gibi notepad plus plus kullanılabilir. Ancak, burada bulunan aracı kullanıyorum - http://www.planetb.ca/syntax-highlight-word . Bu bana satır numarasını kullanma seçeneğinin yanı sıra çok güzel sözdizimi vurgulamasını da veriyor (Lütfen bu adım için Google Chrome'u kullanın, çünkü birkaç kullanıcı yorumunda da belirtildiği gibi Mozilla Firefox kullanılırken sözdizimi vurgusu kopyalanmaz). Sözdizimi vurgulama elde etme adımları aşağıda listelenmiştir:
    • Yukarıda verilen web sitesini Chrome'da açın ve kod parçacığını metin alanına kopyalayın. Bunu göstermek için örnek bir XML kullanacağım (buradan XML örneği - http://www.service-architecture.com/articles/object-oriented-databases/xml_file_for_complex_data.html ).
    • Açılır menüden dili seçin.
    • "Vurgulananları Göster" düğmesini tıklayın. Sözdizimi ile vurgulanmış kod parçacığı, bu durumda seçtiğimiz XML örneğiyle yeni bir sekme açacaktır. Örneğin aşağıdaki resme bakın. Resim metin alanına yapıştırılan örnek bir xml'yi, XML olarak seçilen dili ve düğmeyi gösterir.
    • Satır numaralarını kapatmak için sayfayı krom olarak inceleyin. Ardından, aşağıdaki resimde gösterildiği gibi, stiller altında, ".dp-highlighter ol" içindeki "margin" özelliğinin seçimini kaldırın. Satır numaralarını saklamak istiyorsanız, sonraki adıma geçin.
    • Sözdizimi vurgulanan kodu seçin ve kopyala'yı tıklayın. Artık kodunuz Microsoft Word'e yapıştırılmaya hazır. Sözdizimi ile vurgulanan XML'nin sonucu Bu bilgileri sağladığınız için bu bloga teşekkür ederiz - http://idratherbewriting.com/2013/04/04/adding-syntax-highlighting-to-code-examples-online-and-in-microsoft-word/ .
  2. Yukarıdaki 2., 3. ve 4. gereksinimleri karşılamak için, kod parçacığını eklemek için Microsoft word'deki tabloyu kullanın. Adımlar aşağıda listelenmiştir:

    • Tek sütunlu bir tablo ekleyin.
    • 1. adımdan kopyalanan metni tablo sütununa yapıştırın. Microsoft word ile ne kadar iyi çalıştığını göstermek için satır numaralarını sakladım.
    • İstediğiniz gibi kenarlık uygulayın. Boyut 1pt kullandım. Elde edilen Microsoft kelime pasajı aşağıdaki ekran görüntüsünde gösterildiği gibi görünecektir. Sayfa boyunca ne kadar güzel bir şekilde kırıldığına dikkat edin - "OpenDocument Metni" nesnesi eklerken veya "Basit Metin Kutusu" kullanıyorsanız bunu yönetmek için fazladan çaba gerektirmez. Microsoft Word Tablosuna yapıştırılan sözdizimi ile vurgulanan kod pasajı
  3. Gereksinim 5'e ulaşmak için aşağıdaki adımları izleyin:

    • Tablonun tamamını veya metni seçin.
    • Gözden Geçir sekmesine gidin. Dil altında, "Yazım Denetleme Dili" ni seçin. Yeni bir pop-up sunulacak.
    • "Yazım veya dilbilgisi denetimi yapma" seçeneğini seçin. Ardından Tamam'ı tıklayın. Yazım denetimini devre dışı bırakın
    • Ortaya çıkan metin yazım denetimi devre dışı bırakıldı. Nihai sonuç aşağıdaki resimde gösterilmektedir ve tüm gereksinimleri karşılar. Nihai Sonuç - tüm 5 gereksinimi karşılar.

Lütfen herhangi bir geri bildiriminiz veya iyileştirmeniz varsa veya yaklaşımla ilgili herhangi bir sorunla karşılaşırsanız belirtin.


2
Teşekkürler! Harika görünüyor ... Mozilla Firefox söz dizimi vurgulamasını kopyalamadığı için Google Chrome'u kullanmak zorunda kaldım.
loveMeansNothing

Bunun en iyi çözüm olduğunu düşünüyorum. Bir ipucu daha: Yazım denetimini istemiyor, ancak İngilizce yazmıyorsanız, kodu bir Açık Belge Metni nesnesi olarak ekleyin. INSERT - NESNE - gidin ve OpenDocument Metni'ni seçin. Kodu açılan belgeye ekleyin ve ardından kaydedip kapatın. Kod yukarıdaki gibi gösterilir ancak yazım tamamen göz ardı edilir. Listenin başlığına eklemek istiyorsanız, tek dezavantajı numaranın doğru çalışmaması olabilir. Havent bunu kontrol etti.
user3629892

@ user3629892 Open Document ile farklı sayfalara güzelce sarılamayacağınızı düşündüm.
maracuja-juice

Kelimeye kopyalarken satır numaraları için de o güzel kenarlığı elde etme imkanı var mı?
Paramesh Korrakuti

1
@ Capt.Krusty - Nokta 1, madde 1 ve 5'te, Chrome'u kullanmaktan daha önce bahsetmiştim. Ancak, siz ve loveMeansNothing önerdiği gibi devam edip "Google Chrome" u ekleyeceğim.
abhishek

23

Bir stil tanımlamalısınWord belgenizde ve bunu kaynak kodu için kullanmanız gerekir. Genelde küçük punto boyutunda tek aralıklı yazı tipi, sabit boyutlu sekmeler, tek satır aralığı, paragraf öncesi / sonrası yok vb. Olan "Kod" adında bir stile sahibim. Bu stili yalnızca bir kez tanımlamanız ve sonra yeniden kullanmanız gerekir. Kaynak kodunuzu yapıştırın ve ona "Kod" stilini uygulayın.

Bazı düzenleyicilerin (örneğin Mac’te Xcode) uygulamalar arasında kopyalarken / yapıştırırken panoya RTF’nin yanı sıra metin de eklediğini unutmayın - Word, RTF’yi tanır ve biçimlendirmeyi, söz dizimi rengini vb. Yararlı bir şekilde korur.

Xcode'daki kaynak kodu:

görüntü açıklamasını buraya girin

Kopyalandı ve Word'e yapıştırıldı:

görüntü açıklamasını buraya girin

(Not: Word'deki "Kod" stilinizde yazım denetimini devre dışı bırakmak iyi bir fikirdir.)


Ancak bu, anahtar kelimelere, sayılara, dizelere vb. Otomatik olarak stil eklemez.
Bart

@Bart: genel olarak hayır, ancak Xcode kullananlar için (Mac OS X, iOS, vb. Geliştirme için) pano, tüm sözdizimi renklendirmesi vb. İle RTF içerir ve Word bunu kabul eder. Bu kullanışlı özelliğe sahip başka editörler de olabilir, ancak bunların farkında değilim.
Paul R

RTF çalışıyor, evet, bunu geçmişte de Notepad ++ ile Word'de kullandım. Bununla birlikte, gerçek bir kod stili eklemenin bir yolu olsaydı , yani söz dizimi otomatik olarak vurgulayan bir yöntem olsa çok iyi olurdu . Böyle bir şey yok gibi görünmesi çok yazık. Kabul edelim ki, yükleyebileceğiniz, istek üzerine vurgulayabilen bazı eklentiler var, ancak isterseniz tüm kod bloklarınızı farklı bir stille kolayca yeniden biçimlendirebilecek bir tane bulamadım.
Bart

Bunun altyazıyı desteklediğini sanmıyorum, değil mi?
Oliver

@Schollii: Bence altyazılar yalnızca Word'deki “nesnelere” uygulanabilir. Sanırım kodu 1x1 tabloya koyarsınız, bu da onu bir nesne yapar?
Paul R

11

IDE'ye bağlıdır. Örneğin hem Visual Studio hem de Eclipse , tüm biçimlendirmenizi koruyarak RTF olarak kopyalayıp Word'e yapıştırmanıza olanak tanır.

Notepad ++ , RTF'ye kopyalamanıza izin veren "NppExport" (önceden yüklenmiş olarak gelir) adlı bir eklentiye sahiptir, ancak Notepad ++ 'nın sözdizimi vurgulamasını pek umursamıyorum (yine de kesinlikle geçerli olacaktır). Yaptığı şey düzinelerce dili desteklemektir, oysa yukarıda belirtilen IDE'lerin her biri bir avuç ile sınırlıdır (diğer eklentiler olmadan).


1
Hem VS hem de Eclipse ile sadece bunu yaparken iyi şanslar yaşadım - IDE'nin düzenleyicisini kullanarak sözdizimi renklendirmesini (ve istediğim herhangi bir biçimlendirmeyi), sonra da kesip doğrudan kelimeye yapıştırarak. Tipik olarak, yazı tipini parçacığın karşısındaki yazı tipini sabit genişlikte bir yazı tipine ayarlayarak takip ederim (benim için her zaman
karşıma çıkmadı

3

Bu, şu yanıtla ilgilidir: https://stackoverflow.com/a/2653406/931265 Bir nesne oluşturmak tüm sorunlarımı çözdü.

Ekle> Nesne> Açık Belge Metni

Bu, bir belge penceresi açar, metninizi yapıştırır, istediğiniz gibi biçimlendirir ve kapatır.

Sonuç bir rakamdır. Nesneye sağ tıklayın ve 'başlık ekle'yi seçin.

Artık çapraz referanslar oluşturabilir, bir şekil tablosu oluşturabilirsiniz.


Çapraz referans başlığını yaptığınızda, kodun tamamını ve bu sorunu nasıl çözeceğinizi ekler?
MonsterMMORPG





1

Hala kod parçacıkları eklemenin basit bir yolunu arıyorsanız.

kolayca [Ekle]> [Nesne]> [Açık Belge Metni] seçeneğine gidebilirsiniz> kodunuzu yapıştırın> Kaydet ve Kapat.

Bunu bir makroya da koyabilir ve kolay erişim çubuğunuza ekleyebilirsiniz.

notlar:

  • Bu yalnızca bir kod sayfası alacaktır .
  • Kişisel Kod olacak değil edilmesi otomatik olarak düzeltilen .
  • Bununla yalnızca çift ​​tıklayarak etkileşime girebilirsiniz .

1

Word'de, yorumları koddan ayırmak için renk kullanan kodu "Yapıştır Kaynak Biçimlendirmesini Yapıştır" seçeneğini kullanarak yapıştırmak mümkündür. Bununla birlikte, yapıştırılan kodu yeni bir stil oluşturmak için kullanırsanız, Word renk kodlu metni otomatik olarak çıkarır ve bunları siyah olarak değiştirir (veya otomatik varsayılan renk ne olursa olsun). Biçim uygulamak, belge biçimi gereksinimleriyle uyumu sağlamanın en iyi yolu olduğundan, Word, yazılım programlarını belgelemek için pek kullanışlı değildir. Maalesef Open Office'in daha iyi olduğunu hatırlamıyorum. En iyi çözüm, varsayılan basit metin kutusunu kullanmaktır.


1

Tüm yöntemlerinizi denedim ama benim için işe yaramadı, aslında MS Word Tablolarını kullanarak daha kolay bir yöntem oluşturdum .

Artıları:

  1. Daha güzel
  2. Yönetmesi daha kolay ve daha tutarlı
  3. Sorunlara daha az eğilimli
  4. Harici eklentilere veya MS Word mikro kodlamaya gerek yoktur.
  5. Basit kullanıcılar (benim gibi ) tarafından idare edilmesi daha kolay .

Eksileri: Birisi benim numaramı geliştirebilse de kod renklendirmesini korumayacak.

Adımlar:

  1. Bir 3x3 tablo ekleyin, benim durumumda tablonun toplam genişliğini her zaman boş sayfanın genişliğine eşit yapıyorum ( tablo stilini test etmek için minimum 3 satır ).

  2. Görünmez sınırları kullanın (" Kenarlık Yok " seçeneği ) ve " Kılavuz Çizgilerini Görüntüle " seçeneğini etkinleştirin . bu yönü olmalıdır. Tablonun ızgarasını görmeniz için bu satırların sizin için olduğunu ve yazdırılmayacağına dikkat edin.

görüntü açıklamasını buraya girin

  1. Beğendiğiniz yönü elde etmek için hücrelerin aralığı ve sütun genişliğinde ayarlamalar yapın. ( İnce ayar için " Tablo Özellikleri " bölümüne girmeniz gerekecektir ). görüntü açıklamasını buraya girin

  2. Yalnızca kod parçacıkları için " Kod " adıyla bir " Paragraf Stili " oluşturun ( fikir edinmek için https://stackoverflow.com/a/25092977/8533804 adresini kontrol edin , hepsini takip etmek zorunda değilsiniz)

  3. Önceden oluşturulmuş stile dayalı olacak " Code_numberline " adıyla başka bir " Paragraf Stili " oluşturun. görüntü açıklamasını buraya girin

  4. Yeni oluşturulan " Code_numberline " da beğendiğiniz numaralandırma stilini ekleyin (bu, satır numaralandırmayı otomatik hale getirecektir). görüntü açıklamasını buraya girin

  5. İlk sütuna " Code_numberline " ve 3 sütuna " Kod " uygulayın. görüntü açıklamasını buraya girin

  6. Orta sütuna bir dolgu ekleyin. görüntü açıklamasını buraya girin

  7. Bu masa stilini kaydedin ve keyfini çıkarın!


Bu masa stilini kurtar dedin kadar harika .
Martin of Hessle

@MartinofHessle, birçok yerde onu kod parçacıklarıyla dolduracağınız genişletilmiş belgeler için, bu tablo stilini kaydetme seçeneği zaman kazandırır, ayrıca benim durumumda olduğu gibi belge boyunca tablo stilini sorunsuz bir şekilde değiştirmenize izin verir IDE ve IDLE için bir stilim olduğu yerde ... Öte yandan, yalnızca bir masa kullanıyorsanız, son adımı atlayabilirsiniz
Nader Belal

Nedenine katılıyorum. Normal.dot'a nasıl söyleneceği, onu kalıcı kılmak için yararlı bir ek olacaktı. Anladım ama açık değildi.
Martin of Hessle

@MartinofHessle özür dilerim ama son ifadenizi anlamadım. Daha basit terimlerle tekrar edebilir misin?
Nader Belal

1
Maalesef yazım hatası, normal.dot'a nasıl kaydedileceği olmalıydı .
Martin of Hessle

1

Bunu kullanın - http://hilite.me/

hilite.me, kod parçacıklarınızı, blog yazılarına, e-postalara ve web sitelerine kolayca yerleştirilebilen güzel yazdırılmış HTML biçimine dönüştürür.

Nasıl: Yalnızca kaynak kodunu sol bölmeye kopyalayın, dili ve renk düzenini seçin ve "Vurgula!" Öğesini tıklayın. Sağ bölmedeki HTML artık blogunuza veya e-postanıza yapıştırılabilir, harici CSS veya Javascript dosyaları gerekmez.

Microsoft Word belgesi için: Önizleme bölümündeki içeriği kopyalayın ve Microsoft Word belgenize yapıştırın.

3 bölüm: Kaynak Kodu, HTML ve Önizleme


0

Basit kod biçimlendirmesi istiyorsanız kolay bir yol var.

  1. Kelime aç> Sekme ekle> "Eklentileri Al" ı tıklayın
  2. "İçerik karıştırıcı" için arama yapın 3. "Ekle" ye tıklayın

Ardından içerik karıştırıcı eklentisi otomatik olarak açılır ve kodunuzu kopyalayıp buraya yapıştırabilir ve word doc'a eklemek için "Ekle" yi tıklayabilirsiniz.


0

Bu yanıtlar, web eklenti çözümüne kıyasla modası geçmiş ve oldukça sıkıcı görünüyor; Office 2013'ten bu yana ürünler için mevcuttur.

Metni yerinde kodlamanıza izin veren Easy Code Formatter kullanıyorum . Ayrıca size satır numaralandırma seçenekleri, vurgulama, farklı stiller sunar ve stiller buradan açık kaynaklıdır: https://github.com/armhil/easy-code-formatter-styles, böylece stili kendiniz genişletebilirsiniz. Yüklemek için - Microsoft Word'ü açın, Sekme Ekle'ye gidin / "Eklentileri Al" ı tıklayın ve "Kolay Kod Biçimlendiricisi" ni arayın

görüntü açıklamasını buraya girin görüntü açıklamasını buraya girin görüntü açıklamasını buraya girin

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.