Bagaimana membuat --no-ri --no-rdoc sebagai default untuk instalasi permata?

1042

Saya tidak menggunakan output RI atau RDoc dari permata yang saya instal di mesin saya atau di server yang saya tangani (saya menggunakan sarana dokumentasi lain).

Setiap permata yang saya instal menginstal dokumentasi RI dan RDoc secara default, karena saya lupa mengaturnya --no-ri --no-rdoc.

Apakah ada cara untuk menjadikan kedua flag sebagai default?

Ricardo Acras
sumber
8
Tapi itu bukan ide yang bagus. Saya baru-baru ini perlu menulis kode di jalan dan ketika saya diluncurkan gem serversaya ingat bahwa saya memiliki ini di saya $HOME/.gemrcdan benar-benar membunuh saya ... Google tidak selalu ada.
atmosx
7
Tergantung pada konteksnya. Ini adalah ide bagus jika Anda dapat menambatkan atau Anda melakukan ini di server yang tidak memerlukan dokumentasi permata.
sir-pinecone
3
dengan membongkar satu dapat digunakan show-sourcesebagai alternatif untuk dokumen yang dihasilkan. Ini akan menampilkan komentar sebaris, yang umumnya konten yang sama dengan ri / rdoc.
maks pemohon

Jawaban:

1221

Anda cukup menambahkan baris berikut ke ~/.gemrcfile lokal Anda (ada di folder rumah Anda ):

gem: --no-document

atau Anda dapat menambahkan baris ini ke gemrcfile konfigurasi global .

Berikut ini cara menemukannya (di Linux):

strace gem source 2>&1 | grep gemrc
Jirapong
sumber
2
Pokoknya untuk menjadikan ini sistem standar lebar tanpa mengedit / etc / skel dan direktori home setiap pengguna?
Hackeron
41
ini dia / etc / gemrc
Jirapong
3
/ etc / gemrc tidak bekerja untuk saya, tetapi .gemrc berhasil. Saya bertanya-tanya apakah itu khusus rvm yang tidak membaca sistem gemrc?
wjl
5
@ gdelfino jawaban adalah yang paling menonjol
Ryan
4
usang - silakan lihat jawaban saya
James Lim
492

Dari dokumentasi RVM :

Cukup tambahkan baris ini ke Anda ~/.gemrcatau /etc/gemrc:

gem: --no-document

Catatan: Jawaban aslinya adalah:

install: --no-rdoc --no-ri 
update: --no-rdoc --no-ri 

Ini tidak lagi valid; Sejak saat itu RVM docs telah diperbarui, sehingga jawaban saat ini untuk hanya memasukkan gemarahan adalah yang benar.

gdelfino
sumber
12
Karena RubyGems versi 2.0.0preview2 , Anda bisa menggunakan --no-documentatau --document=rdochanya untuk rdoc.
iono
3
Saya tidak setuju dengan edit @ mpapis pada 20 Juni 2013. Dia benar-benar mengubah jawaban ini dan ada banyak orang yang memilihnya karena mereka pikir itu lebih baik daripada jawaban yang diterima. Orang yang memposting jawaban ini secara eksplisit menulis bahwa mereka tidak ingin menambahkan dua opsi itu ke setiap perintah gem karena itu melanggar beberapa perintah. Sebelum @mpapis benar-benar mengubah jawaban, kode dalam jawabannya adalah: install: --no-rdoc --no-ri\nupdate: --no-rdoc --no-ri @mpapis, mengapa Anda mengubah dokumentasi RVM dan juga mengubah jawaban ini?
David Grayson
1
karena itu benar, tidak ada alasan untuk menjaga dua jalur yang terpisah, melacak kompatibilitas multi proyek itu rumit - dan dokumen RVM kadang-kadang diperbarui ketika kami menemukan sesuatu tidak aktif - seperti dalam kasus ini, tidak benar bahwa rubygems akan berperilaku salah, tidak apa-apa menggunakan gem:dua entri terpisah.
mpapis
3
Gunakan ruby -e "require 'etc';puts Etc.sysconfdir"untuk menentukan jalur ke gemrcfile konfigurasi Anda .
Michael Mims
2
Yang ini sudah usang lihat panduan.rubygems.org/command-reference/#gem-install
raskhadafi
185

Catat itu --no-ridan --no-rdocsudah usang sesuai dengan panduan baru . Cara yang disarankan adalah dengan menggunakan --no-documentdi ~/.gemrcatau /etc/gemrc.

install: --no-document
update: --no-document

atau

gem: --no-document
James Lim
sumber
92

Di Linux (dan mungkin Mac):

echo 'gem: --no-document' >> ~/.gemrc

Satu kalimat ini dulu ada di komentar di sini, tapi entah bagaimana menghilang.

Slava V
sumber
11
Anda harus menggunakan >>jika pengguna sudah memiliki ~/.gemrc.
jamaah
Apakah ada perbedaan antara ini echo 'gem: --no-doc --no-ri' >> ~/.gemrcdan yang Anda tulis atau keduanya memiliki efek yang sama?
ltdev
2
@Lykos --no-doc --no-risudah ditinggalkan (lihat panduan.rubygems.org/command-reference/#gem_install untuk opsi)
Slava V
44

# /home/{user}/.gemrc

---
:update_sources: true
:sources:
- http://gems.rubyforge.org/
- http://gems.github.com
:benchmark: false
:bulk_threshold: 1000
:backtrace: false
:verbose: true
gem: --no-ri --no-rdoc

http://webonrails.com/2008/12/03/skiping-installation-of-ri-and-rdoc-documentation-while-installing-gems/

David
sumber
Terima kasih untuk contoh ini, sempurna untuk membantu saya menghapus Ruby yang tertanam yang saya salin & tempel di beberapa titik dan kemudian menghasilkan kesalahan psikis saat menginstal RubyGems 1.8.10 di bawah Ruby 1.9.2.
stevenhaddox
17
Harap jangan memposting balasan "hasil pertama di Google". Hasil pertama di Google sekarang menunjukkan balasan Anda, membuktikan sendiri mengapa Anda tidak harus melakukan ini. Terima kasih, tentu saja, atas jawaban Anda.
wjl
26
Sebenarnya, "hasil pertama di Google" menunjukkan: "" hasil pertama di Google "menunjukkan:" "hasil pertama di Google" menunjukkan: "" ... ERROR: Stack Overflow.
Félix Saparelli
Saya harus menambahkan terima kasih atas komentar steve (di atas). Saya mencabut rambut saya mengapa saya tidak bisa menginstal RubyGems terbaru. Ternyata saya juga memiliki file .gemrc yang salah. Saya terus mendapatkan kesalahan ini: ../.rbenv/versions/1.9.2-p290/lib/ruby/1.9.1/psych.rb:148:in `parse ': tidak dapat menguraikan YAML pada baris 2 kolom 10 ( Psych :: SyntaxError)
wchrisjohnson
33

Pada Windows XP path ke file .gemrc adalah

c:\Documents and Settings\All Users\Application Data\gemrc 

dan file ini tidak dibuat secara default, Anda harus membuatnya sendiri.

Viachaslau Tysianchuk
sumber
20
Di bawah Windows 7, ini adalah C: \ ProgramData \ gemrc
Viachaslau Tysianchuk
lokasi win7 berfungsi untuk windows 200. Pastikan juga Anda memiliki "Sembunyikan ekstensi untuk tipe file yang diketahui", tidak akan mengambil gemrc.txt .... facepalm
jtzero
16

Oneliner untuk pengguna windows 7:

(echo install: --no-document && echo update: --no-document) >> c:\ProgramData\gemrc

Gabe
sumber
6

Seperti disebutkan di atas, masukkan gem: --no-documentfile gem Anda. Namun, gemrc seluruh sistem tidak akan selalu masuk ke dalamnya /etc/gemrc. Jika Anda menggunakan RVM, atau Anda menginstal Ruby di bawahnya /usr/local/bin, ia harus masuk ke lokasi yang berbeda. Anda dapat menemukan lokasi ini dengan menjalankan irbdan mengetik ...

require 'rubygems'
Gem::ConfigFile::SYSTEM_WIDE_CONFIG_FILE

Lihat posting asli tentang ini di sini .

Adam
sumber
1
Oneliner:ruby -rrubygems -e'puts Gem::ConfigFile::SYSTEM_WIDE_CONFIG_FILE'
Andrew Burns
5

Langkah demi langkah:

Untuk membuat / mengedit file .gemrc dari terminal:

vi  ~/.gemrc

Anda akan membuka editor bernama vi. rekatkan:

gem: --no-ri --no-rdoc

klik tombol 'esc'-.

ketik:

:exit

Anda dapat memeriksa apakah semuanya benar dengan perintah ini:

sudo /Applications/TextEdit.app/Contents/MacOS/TextEdit ~/.gemrc
Andreas
sumber
2
Untuk memperjelas, perintah terakhir itu adalah OS X khusus. Ini membuka ~/.gemrcfile di texteditor.
Martijn Heemels
1
~ adalah representasi untuk direktori home. (hal-hal berikut dalam huruf kapital adalah variabel lingkungan) Urutan memeriksa direktori untuk .gemrc: 1. Gunakan HOME jika sudah ditentukan. 2. Gunakan USERPROFILE jika sudah ditentukan. 3. Gunakan HOMEDRIVE dan HOMEPATH bersama jika mereka didefinisikan. 4. Gunakan jalur yang Anda dapatkan dengan meminta Ruby memperluas "~". 5. Gunakan "C: /" jika Anda menggunakan mesin Windows. Itu adalah per: docs.rubygems.org/read/chapter/12
Gary S. Weaver
Anda tidak perlu sudomengedit pengguna Anda sendiri ~/.gemrc.
jbbuckley
5

Pada Windows7 file .gemrc tidak ada, Anda dapat membiarkan Ruby membuat yang seperti ini (tidak mudah melakukannya di explorer).

gem sources --add http://rubygems.org

Anda harus mengonfirmasi (tidak aman). Sekarang file dibuat di folder profil pengguna Anda (c: \ users \)

Anda dapat mengedit file teks untuk menghapus sumber yang Anda tambahkan atau Anda dapat menghapusnya dengan

gem sources --remove http://rubygems.org
Peter
sumber
3

Untuk pengguna Windows, Ruby tidak mengatur file .gemrc. Jadi, Anda harus membuat file .gemrc di direktori home Anda ( echo %USERPROFILE%) dan memasukkan baris berikut di dalamnya:

gem: --no-document

Seperti yang sudah disebutkan dalam jawaban sebelumnya, jangan gunakan --no-ri dan --no-rdoc karena sudah usang. Lihat sendiri:

gem help install
Rajkaran Mishra
sumber