2011-10-21 9 views
6

Generalmente visualizzato nel file .gemspec. per esempio. i18n.gemspec.

$: << File.expand_path('../lib', __FILE__) 
+0

possibile duplicato [Nel linguaggio di programmazione Ruby, qual è il nome di $:] (http://stackoverflow.com/questions/7634686/ in-the-ruby-programmazione-lingua-cosa-è-il-nome-di) –

risposta

13
Pre-defined variables 
$!   The exception information message set by 'raise'. 
[email protected]   Array of backtrace of the last exception thrown. 
$&   The string matched by the last successful match. 
$`   The string to the left of the last successful match. 
$'   The string to the right of the last successful match. 
$+   The highest group matched by the last successful match. 
$1   The Nth group of the last successful match. May be > 1. 
$~   The information about the last match in the current scope. 
$=   The flag for case insensitive, nil by default. 
$/   The input record separator, newline by default. 
$\   The output record separator for the print and IO#write. Default is nil. 
$,   The output field separator for the print and Array#join. 
$;   The default separator for String#split. 
$.   The current input line number of the last file that was read. 
$<   The virtual concatenation file of the files given on command line (or from $stdin if no files were given). 
$>   The default output for print, printf. $stdout by default. 
$_   The last input line of string by gets or readline. 
$0   Contains the name of the script being executed. May be assignable. 
$*   Command line arguments given for the script sans args. 
$$   The process number of the Ruby running this script. 
$?   The status of the last executed child process. 
$:   Load path for scripts and binary modules by load or require. 
$"   The array contains the module names loaded by require. 
$DEBUG  The status of the -d switch. 
$FILENAME Current input file from $<. Same as $<.filename. 
$LOAD_PATH The alias to the $:. 
$stderr The current standard error output. 
$stdin  The current standard input. 
$stdout The current standard output. 
$VERBOSE The verbose flag, which is set by the -v switch. 
$-0  The alias to $/. 
$-a  True if option -a is set. Read-only variable. 
$-d  The alias to $DEBUG. 
$-F  The alias to $;. 
$-i  In in-place-edit mode, this variable holds the extension, otherwise nil. 
$-I  The alias to $:. 
$-l  True if option -l is set. Read-only variable. 
$-p  True if option -p is set. Read-only variable. 
$-v  The alias to $VERBOSE. 
$ -w  True if option -w is set. 

le scorciatoie di cui sopra sono uno sfortunato anacronismo Perl! Ci sono "Nomi in inglese" disponibili per alcuni di essi, che sono autoesplicativi e che dovrebbero essere usati se disponibili.

vedi anche: http://ruby.runpaint.org/globals

vedi anche: http://www.zenspider.com/Languages/Ruby/QuickRef.html

2

$: è equivalente a $LOAD_PATH, vale a dire la lista di directory che si può require file da senza dare un percorso più specifico. Troverai il Ruby QuickRef utile per altre variabili predefinite che potresti incontrare.

3

$: è il percorso di caricamento e $LOAD_PATH è il suo alias. Quando si rubano le librerie/file load/require all'interno dell'applicazione Ruby, Ruby cerca nelle directory elencate in $: per loro. Con $: << File.expand_path('../lib', __FILE__) si aggiunge una directory specifica al percorso di caricamento.