のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,433,793人
昨日:no data人
今日:
最近の注目
人気の最安値情報

元スレEshell の使い方とか設定とか【Emacs Shell、Lisp】

emacs覧 / PC版 /
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
←前へ 1 2 3 4 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
102 = :

> From: [89] デフォルトの名無しさん <sage>
> Date: 2008/05/12(月) 09:30:03
>
> 選択範囲内のすべての行の先頭にタブを入れたいのですが,
> どうすればいいですか?
>
> わかる方がいましたら教えてください。
> __________________________________________________
>
> From: [90] デフォルトの名無しさん <sage>
> Date: 2008/05/12(月) 09:43:01
>
> >>89
> マークして C-x r t C-q TAB RET
> 基本的な操作は本スレで質問しような。

このコピペは流行ってるのか?

104 = :

例えば
rm *~
して~の後ろでTABを押したときに、*~に含まれるファイル名の補間リストが見たいのですが、
現状では、*~にマッチするファイル名を順に変換するようになっています。

補間リストを表示するようにはできませんか?

105 = :

vistaでeshell使っていて、pythonをeshell上で使いたいんですが
どうすればコマンドで使えるようになるのでしょうか
教えてください

106 = :

パス通ってればいいんじゃね?

107 = :

load-path
("c:/Python30/
パスは通ってるのですが、
c:/ $ python
python: command not found
このようにコマンドとして使えません

108 = :

節子、それファイルパスやない...ライブラリのロードパスや!

109 = :

>>107
(getenv "Path")
にc:/Python30/が含まれるべきだろ低脳

110 = :

できるようになりました
ありがとうございます
わからなくなったらまたきます^^

111 = :

>>109 そのぐらいで怒るなよ
>>110 がんばれよ

113 = :

ほんとだ
カラーもちゃんと表示されるようになってる

114 = :

外部プロセスの呼出をやりたいです。
start-processがある事がわかったのですが、うまくできませんでした。

やりたい事はC-c t tで
現在開いているファイルに対して
txt2tags -t html --toc --encoding=utf-8
を実行してほしい。

115 = :

(defun foo ()
(interactive)
(setq bname(concat "txt2tags -t html --toc --encoding=utf-8 " (buffer-name)))
(shell-command bname))
(global-set-key [(C c)(t)(t)] 'foo)

とかじゃだめなの?

てか、eshellが全然関係ないうえにstart-processも関係ないよな、この質問

まあ過疎ってるからいいけども

117 = :

>>116
(defun foo (cmd)
(interactive "M% ")
(eshell)
(goto-char (point-max))
(insert cmd)
(eshell-send-input))

118 = :

>>117
キーボードマクロを使わない、まさにその方法が知りたかったです。
ありがとうございました!

119 = :

なんか知らんが、eshellとtrampの組み合わせが調子悪い・・・。
一旦、sudo lsとかを実行しないと数十秒固まったりする。同じ症状が出てる人いません?

emacs 23.2.1とtramp 2.1.17です。

122 = :

eshellのターミナルで git log を実行すると次のように WARNING が出て
RETURN を押さないと次が見えなくて不便です

$ git log
WARNING: terminal is not fully functional
- (press RETURN)

環境変数TERM関連は次のようになってます

$ env | grep TERM
TERM=dumb
TERMCAP=SC|screen|VT 100/ANSI X3.64 virtual terminal:\
TERM_PROGRAM=Apple_Terminal
TERM_PROGRAM_VERSION=273

ためしに export TERM=xterm とすると (press RETURN) 等はでなくなるのですが、
ansi-color-for-comint-mode-on にしているにもかかわらず
エスケープシーケンスがそのまま表示されてしまいます。

普通のコンソールと同じように (press RETURN) 等を出さずに
色付きで表示するにはどうしたらいいんでしょうか?

123 = :


defcustom から eshell-modules-list にアクセスをし、
中に eshell-term を加えてみてはどうかね。

eshell-modules-list の内容をここに貼ってみろ。

124 = :

eshell-modules-list は次のように自分で設定していて実際の値もこれと同じでした。
(setq eshell-modules-list '(eshell-alias eshell-banner eshell-basic eshell-cmpl eshell-dirs eshell-glob eshell-hist eshell-ls eshell-pred eshell-prompt eshell-script eshell-term))
なぜデフォルトにあった eshell-unix が抜けているのかは、思い出せず。

で、これをきっかに設定を見直したところエスケープシーケンスが反映されていない原因は、
eshell-output-filter-functions から eshell-handle-ansi-color を外していたからでした
これもまたなぜ外してしまったのか。。。

ただeshellのデフォルトの TERM=dumb の状態だと git log のあとで
警告が出てRETURNを求められるのは相変わらずです。

125 = :


>>124
解決策は2つある。

1. eshell上で

$ export PAGER=
$ git log

2. eshell-visual-commands に git を加える。

お勧めは .eshell/login に export PAGER= を挿入するやり方。
わかったか?

126 = :

>>125
ありがとうございます
2の方法だと何も表示されなくなってしまったんですが
.eshell/login に export PAGER= を挿入する方法だとうまく行きました。
当初、環境変数PAGERを設定してなのになんでPAGERが作動するのか謎でしたが
空の値をセットすればPAGERが無効になるんですね。勉強になりました。

ただ git help config すると
sh: -c: line 0: syntax error near unexpected token `||'
のようエラーがぞろぞろ出てきてまったくマニュアルが表示されなくなったので
試しに export PAGER=cat にすると git help config の方も動きました。

あとほんとに些細なことなんですが git config --global color.ui "auto" として
出力を色付きにしているとき、普通のコンソールでは色付きで表示されるのに
eshell上ではモノクロです。
色指定のエスケープシーケンスが含まれるログファイルをeshell上でcatで表示すると
色付きで正しく表示されるんですが。

127 = :


>>126
> 当初、環境変数PAGERを設定してなのになんでPAGERが作動するのか謎でしたが

PAGER のデフォルト値が man だからだろ。

> 出力を色付きにしているとき、普通のコンソールでは色付きで表示されるのに

TERM が馬鹿 (dumb) だから。
xterm-256color や xterm-color にしてみると良い。
eshell の使う ansi-color のモジュールが
サポートしていないエスケープシークエンスがあるので、
うまく表示されない場合が多い。

128 = :

>>127
ありがとうございます
export TERM=xterm-256color
export TERM=xterm-color
のどちらでも git log の表示が色付きで出るようになりました

129 = :

RubyをEmacsで使おうとして苦戦しております。

http://pub.cozmixng.org/~the-rwiki/rw-cgi.rb?cmd=view;name=Emacs

このサイトにて、
「Debianの"ruby-elisp.deb"のようにパッケージが利用できるなら、
それをインストールする。ソースからビルドした場合などは、
適当な場所(たとえば~/site-lispなど)にmisc/*.elをコピーする。
そして~/.emacsに次のように書いておく」
と書いてあります。

最後の部分は恐らくパスを追加するということなのだと思うのですが、
私はパスを追加するとはコントロールパネルから辿って行って、絶対パスを
ペーストするやり方しか知らないので、ここがよくわかりません。

~/.emacsって言うのはどこを指していて、どうやって書き込めばいいのでしょうか?

130 = :

>>129
釣りですか?UNIX版で~/.emacsっていうのはどこを指しているのか
なんて質問が出るわけがないのだけど。

$ vi ~/.emacs
とか
$ nano ~/.emacs
でどう?

133 = :

保守です。
Eshellけっこう便利だと思うけど、あんま使われないのかな ?
Emacsだけで、screen + zsh + vim とけっこう張り合える。

135 = :

色々やってみた

# 代わりにemacsコマンドを呼び出す系
alias w3m 'w3m-find-file $1'
alias irb 'run-ruby "irb"'
alias ghci 'run-haskell'
alias emacs 'find-file $1'
alias make 'compile ${mapconcat (function identity) ${cons "make" $*} " "}'

# tomp3 *.wav *.mp4 ... のようにして使う
alias tomp3 'for i in ${eshell-flatten-list $*} {ffmpeg -i $i ${concat ${file-name-sans-extension $i} .mp3}}'
alias toutf8 'for i in $* {nkf -w -Lu --overwrite $i}'
alias check-encode 'for i in ${eshell-flatten-list $*} {*echo $i : ${nkf -g $i}}'
alias elcompile 'for i in ${eshell-flatten-list $*} {byte-compile-file $i}'
alias elcompile-all 'for i in **/*.el {byte-compile-file $i}'

# ショートカット系?
alias d 'dired-other-window ${pwd}'
alias c 'cd *$1*'
alias f 'find-file $1'
alias r 'view-file $1'

# 他のシェルでもよくやるの系
alias ll 'ls -lh $*'
alias la 'ls -a $*'
alias findn 'find . -name $*'
alias cdd 'cd ~/download'
alias untgz 'tar xvzf $*'
alias untbz 'tar xvjf $*'
alias slideshow 'feh -ZF *.jpg *.gif *.png >/dev/null'

137 = :

コマ送りしてみたらほんとだったw
途中でハノイの塔が出てくるけど、その時のモードラインにはTetrisの文字が…
まぁこの辺は適当に合成したのかな。

141 = :

すいません、教えてください。
eshell での *su - コマンド等での
入力されたパスワードを非表示にするには
どのように設定すればいいのでしょうか?
検索しても shell-mode での設定例しか見つけられませんでした。

143 = :

eshell を規定のシェルとすることはできますか?

具体的には、M-x find-name-dired 等で使用する find を、eshell の find とすることはできるのでしょうか。

私は Windows で Ntemacs を使っているのですが、上記の際にコマンドプロンプトの find が使用されてエラーとなります。

できるとすれば、setenv で "SHELL" に何かを設定するのかな。

144 = :

>>143
eshellのfindは外部コマンドのfindを呼び出してるだけだよ
lsみたいに呼び出さないのもあるけど

findはどっかから探してきて、Windows標準のfind.exeより先に見つかるように
パスを設定して、そこにコピーする必要がある

145 = :

>>144
そうなのですか?
eshell-prefer-lisp-function を t にすると find の挙動が変わったから、てっきり lisp で find が作成されているのだと考えておりました (もっとも、その find の usage が (ITEM SEQ [KEYWORD VALUE] ...) となっており、help も見つけられないので困っておりました)。

148 = :

パイプの挙動がおかしくない?

150 = :

あげ


←前へ 1 2 3 4 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / emacs一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

類似してるかもしれないスレッド


トップメニューへ / →のくす牧場書庫について