http://www.geocities.co.jp/SiliconValley-Cupertino/3751/grapad03.tgz
コンソール上で動く、GRAPADという名前のエディタをつくっています。
僕自身初心者なので(UNIX歴半年)、まだまだ未熟ですが、これからもっと
いろいろな機能を付けていきたいと思っています。
cursesを使って、メニューやダイアログボックスも使えますから、難しい設定はいりません。
以下の環境でコンパイルと実行を確認しました。
VineLinux2.1.5のGnomeターミナル
VineLinux2.1.5のコンソール
RedHatLinux7.1のGnomeターミナル
FreeBSD(98)4.3のコンソール(ダイアログの枠線が化けます)
探検
エディタ作ったよ!見てみて!
1エディタ作ってる人
NGNG18名無しさん@お腹いっぱい。
NGNG Debain GNU/Linux 3.0 でコンパイルできました。
Eterm + screen 上での動作も確認しました。
ただ、いったん F2 でメニューを開いたときに、抜けよ
うとしてやみくもに ESC を押したら segmentation fault
でオチてしまいました。
原因は editor.cpp:277 の
else if (n->next->c[0]==EOF)
の部分で n->next == NULL であるためのようです。
ちょっと時間がないので前後を読んでいる暇がありません。
すいません。
あとこれはお願いなのですが、makefile 内で gcc とハード
コーディングするのではなく、
CXX=gcc
としておき、
$(CXX)
で参照するようにしていただけるとうれしいです。
Eterm + screen 上での動作も確認しました。
ただ、いったん F2 でメニューを開いたときに、抜けよ
うとしてやみくもに ESC を押したら segmentation fault
でオチてしまいました。
原因は editor.cpp:277 の
else if (n->next->c[0]==EOF)
の部分で n->next == NULL であるためのようです。
ちょっと時間がないので前後を読んでいる暇がありません。
すいません。
あとこれはお願いなのですが、makefile 内で gcc とハード
コーディングするのではなく、
CXX=gcc
としておき、
$(CXX)
で参照するようにしていただけるとうれしいです。
19名有りさん@お腹へった ◆fSunOs.U
NGNG Solaris8 IA+gcc3.0でやってみた まずmakefileの"gcc"となってる
ところは"g++"にしとかないとリンクで失敗するので(゚д゚)マズー
で 起動すると いきなりSIGSEGV......バックトレースは
#0 0xdfa9999e in wmove () from /usr/lib/libcurses.so.1
#1 0x804a37f in _ZN7CEditor7RepaintEv (this=0x8047990) at editor.cpp:336
#2 0x8049952 in _ZN7CEditor5StartEv (this=0x8047990) at editor.cpp:132
#3 0x8049177 in main (argc=1, argv=0x8047b5c) at grapad.cpp:50
そこでとりあえず
----------------------------------------------------------------------
--- editor.cpp~ Fri Dec 14 01:11:09 2001
+++ editor.cpp Fri Dec 14 03:52:14 2001
@@ -333,11 +333,13 @@
}
//デバッグ用
+ if (sttwnd) {
wmove(sttwnd,0,0);
wattron(sttwnd,COLOR_PAIR(COLOR_MENU));
wprintw(sttwnd,"X%d Y%d MX%d Key%X Scrl%d current:%c(%X)", curx, cury ,curmx,
imkey,scroll, buf.GetCurrent()->c[0], (unsigned char)buf.GetCurrent()->c[0] );
wrefresh(sttwnd);
+ }
//画面更新
if(showliner)liner.Repaint(scroll);
----------------------------------------------------------------------
ってな感じでやり直したら 最初の表示は出てきたけど 文字入力してない状態で
下向きカーソルキーを押したらまたSIGSEGV......(>>18と同じところか)
#0 0x804a0f2 in _ZN7CEditor7RepaintEv (this=0x8047990) at editor.cpp:277
277 else if( n->next->c[0]==EOF ){
#1 0x8049ce7 in _ZN7CEditor5StartEv (this=0x8047990) at editor.cpp:209
#2 0x8049177 in main (argc=1, argv=0x8047b5c) at grapad.cpp:50
一応文字入力等はできて "./grapad readme.txt"とやるとreadme.txtを
オープンできるけど スクロールさせると日本語が文字化けする
......とりあえず頑張って......
ところは"g++"にしとかないとリンクで失敗するので(゚д゚)マズー
で 起動すると いきなりSIGSEGV......バックトレースは
#0 0xdfa9999e in wmove () from /usr/lib/libcurses.so.1
#1 0x804a37f in _ZN7CEditor7RepaintEv (this=0x8047990) at editor.cpp:336
#2 0x8049952 in _ZN7CEditor5StartEv (this=0x8047990) at editor.cpp:132
#3 0x8049177 in main (argc=1, argv=0x8047b5c) at grapad.cpp:50
そこでとりあえず
----------------------------------------------------------------------
--- editor.cpp~ Fri Dec 14 01:11:09 2001
+++ editor.cpp Fri Dec 14 03:52:14 2001
@@ -333,11 +333,13 @@
}
//デバッグ用
+ if (sttwnd) {
wmove(sttwnd,0,0);
wattron(sttwnd,COLOR_PAIR(COLOR_MENU));
wprintw(sttwnd,"X%d Y%d MX%d Key%X Scrl%d current:%c(%X)", curx, cury ,curmx,
imkey,scroll, buf.GetCurrent()->c[0], (unsigned char)buf.GetCurrent()->c[0] );
wrefresh(sttwnd);
+ }
//画面更新
if(showliner)liner.Repaint(scroll);
----------------------------------------------------------------------
ってな感じでやり直したら 最初の表示は出てきたけど 文字入力してない状態で
下向きカーソルキーを押したらまたSIGSEGV......(>>18と同じところか)
#0 0x804a0f2 in _ZN7CEditor7RepaintEv (this=0x8047990) at editor.cpp:277
277 else if( n->next->c[0]==EOF ){
#1 0x8049ce7 in _ZN7CEditor5StartEv (this=0x8047990) at editor.cpp:209
#2 0x8049177 in main (argc=1, argv=0x8047b5c) at grapad.cpp:50
一応文字入力等はできて "./grapad readme.txt"とやるとreadme.txtを
オープンできるけど スクロールさせると日本語が文字化けする
......とりあえず頑張って......
NGNG
>>16
Alt+ほげ って本当は [0x80-0x9F] (C1 control code) で、
8bit 通らない場合は [ESC] [0x00-0x20] だったような。
最近は違うのかな。
まぁ多くの実装は ESC XX なんだけど。
Alt+ほげ って本当は [0x80-0x9F] (C1 control code) で、
8bit 通らない場合は [ESC] [0x00-0x20] だったような。
最近は違うのかな。
まぁ多くの実装は ESC XX なんだけど。
21名無しさん@お腹いっぱい。
NGNG ttp://www.factory.gr.jp/~ishigaki/old_diary/199905.html
を参考に以下のように書き換えて
FreeBSD 4.4 + Tera Term Pro で (゚д゚)ウマー
# op が2つ以上あるとか変なのはURLのページにあったままです
# AX,GO って何の capability でせうか?
teraterm|TeraTerm|TeraTermPro console:\
:pa#64:Co#8:AF=\E[3%dm:AB=\E[4%dm:op=\E[x:\
:AF=\E[3%dm:AB=\E[4%dm:op=\E[m:\
:AX:G0:\
:eA=\E(B\E)0:as=^N:ae=^O:\
:kb=^H:kN=\E[6~:kP=\E[3~:kh=\E[[2~:@7=\E[[5~:\
:tc=vt200:
確認ですが、>>1 は home(kh), end(@7) はサポートしてないですよね?
を参考に以下のように書き換えて
FreeBSD 4.4 + Tera Term Pro で (゚д゚)ウマー
# op が2つ以上あるとか変なのはURLのページにあったままです
# AX,GO って何の capability でせうか?
teraterm|TeraTerm|TeraTermPro console:\
:pa#64:Co#8:AF=\E[3%dm:AB=\E[4%dm:op=\E[x:\
:AF=\E[3%dm:AB=\E[4%dm:op=\E[m:\
:AX:G0:\
:eA=\E(B\E)0:as=^N:ae=^O:\
:kb=^H:kN=\E[6~:kP=\E[3~:kh=\E[[2~:@7=\E[[5~:\
:tc=vt200:
確認ですが、>>1 は home(kh), end(@7) はサポートしてないですよね?
2221
NGNG 本題と外れるんで sage ですが……
FreeBSD っていつになったらまともな termcap になるんだろ。
NetBSD とかが使ってる http://www.tuxedo.org/~esr/terminfo/
あたりの使えばすむと思うんだけどなぁ… esr 嫌いなのかな?(w
FreeBSD っていつになったらまともな termcap になるんだろ。
NetBSD とかが使ってる http://www.tuxedo.org/~esr/terminfo/
あたりの使えばすむと思うんだけどなぁ… esr 嫌いなのかな?(w
NGNG
FreeBSDのeeみたいな感じだね〜
NGNG
「秀丸 for Unix ほしい」って声がけっこうあるから、
そういうの目指したら?
そういうの目指したら?
NGNG
26おはよごす
NGNG テスト環境 : TeraTermからVine1.1へログインして使用
Makefile
(1)g++に変更しないとコンパイルできなかったよ
(2)common.oのルールがないよ
grapad
(1)F2が効かないので保存できない...
(2)メニューを英語にしてくれたらうれしい(普段SJIS環境にしてるもんで)
Makefile
(1)g++に変更しないとコンパイルできなかったよ
(2)common.oのルールがないよ
grapad
(1)F2が効かないので保存できない...
(2)メニューを英語にしてくれたらうれしい(普段SJIS環境にしてるもんで)
NGNG
>>20
> Alt+ほげ って本当は [0x80-0x9F] (C1 control code) で、
> 8bit 通らない場合は [ESC] [0x00-0x20] だったような。
Control+ とごっちゃになってますな。
本来は Alt+ほげ は 7bit char の 8bit 目を立てたコードを生成し、
Control+ほげ は -0x20 したコードを生成します。
端末環境によっては 8bit 目が通らないケースが多いので、
そういう場合はエスケープしたシーケンス(ESC が使われることが多い)を
生成しますが、実装依存ですし、端末の設定で変更す可能なことも多いです。
X 上のアプリケーションではそういう制約はないのですが、
端末エミュレータなどは得られたキーコードを文字コードもしくは
文字シーケンスにマッピングするのでその過程で同様の縛りが発生します。
例えば以下のように入力が流れる時、各過程で変換が発生します。
この変換は特殊な文字をエスケープするような変換ではなくて、
全ての文字を別の写像にマッピングするような変換だと思っておいた方が
いいでしょう。
キーボード→X→端末エミュレータ→curses→エディタ
ちなみにファンクションキーを適当な文字シーケンスとして表現するのは
端末エミュレータの担当。その文字シーケンスを解釈するのは curses の担当に
なります。
> Alt+ほげ って本当は [0x80-0x9F] (C1 control code) で、
> 8bit 通らない場合は [ESC] [0x00-0x20] だったような。
Control+ とごっちゃになってますな。
本来は Alt+ほげ は 7bit char の 8bit 目を立てたコードを生成し、
Control+ほげ は -0x20 したコードを生成します。
端末環境によっては 8bit 目が通らないケースが多いので、
そういう場合はエスケープしたシーケンス(ESC が使われることが多い)を
生成しますが、実装依存ですし、端末の設定で変更す可能なことも多いです。
X 上のアプリケーションではそういう制約はないのですが、
端末エミュレータなどは得られたキーコードを文字コードもしくは
文字シーケンスにマッピングするのでその過程で同様の縛りが発生します。
例えば以下のように入力が流れる時、各過程で変換が発生します。
この変換は特殊な文字をエスケープするような変換ではなくて、
全ての文字を別の写像にマッピングするような変換だと思っておいた方が
いいでしょう。
キーボード→X→端末エミュレータ→curses→エディタ
ちなみにファンクションキーを適当な文字シーケンスとして表現するのは
端末エミュレータの担当。その文字シーケンスを解釈するのは curses の担当に
なります。
28名無しさん
NGNG 手軽にthread処理の出来るマクロ言語を搭載してクレー。
しかし、これから エディタに言語載せるとしたら、なにのせる?
guile あたり使っとく?
しかし、これから エディタに言語載せるとしたら、なにのせる?
guile あたり使っとく?
29名無しさん@お腹いっぱい。
NGNG Solaris7 SPARC + gcc + kterm でコンパイルしてみたんですが、
まず makefile がちとまずいような気がする。
begin 644 makefile
M4DT@("`@(#T@<FT@+68*14-(3R`@(#T@96-H;PI#0R`@("`@/2!G8V,*0T9,
M04=3(#T@+4\*3$9,04=3(#T@+6QN8W5R<V5S"@IA;&PZ(&=R87!A9`IG<F%P
M860@.B!C:&%I;BYO(')E<VES=&]R>2YO(&UE;G4N;R!E9&ET;W(N;R!G<F%P
M860N;R`*"20H0T,I("0H3$9,04=3*2`M;R!G<F%P860@7`H)8VAA:6XN;R!R
M97-I<W1O<GDN;R!M96YU+F\@961I=&]R+F\@9W)A<&%D+F\*8VQE86XZ(`H)
M0"0H4DTI(&-H86EN+F\@<F5S:7-T;W)Y+F\@;65N=2YO(&5D:71O<BYO(&=R
M87!A9"YO(&=R87!A9"`J?@H*+F-P<"YO.@H)0"0H4DTI("1`"@DD*$-#*2`D
M*$-&3$%'4RD@+6,@)"HN8W!P"@IC:&%I;BYO.B!C:&%I;BYC<'`@8VAA:6XN
M:`IR97-I<W1O<GDN;SH@<F5S:7-T;W)Y+F-P<"!R97-I<W1O<GDN:`IM96YU
M+F\Z(&UE;G4N8W!P(&UE;G4N:`IE9&ET;W(N;SH@961I=&]R+F-P<"!E9&ET
9;W(N:`IG<F%P860N;SH@9W)A<&%D+F-P<```
`
end
こんなのはどう?
まず makefile がちとまずいような気がする。
begin 644 makefile
M4DT@("`@(#T@<FT@+68*14-(3R`@(#T@96-H;PI#0R`@("`@/2!G8V,*0T9,
M04=3(#T@+4\*3$9,04=3(#T@+6QN8W5R<V5S"@IA;&PZ(&=R87!A9`IG<F%P
M860@.B!C:&%I;BYO(')E<VES=&]R>2YO(&UE;G4N;R!E9&ET;W(N;R!G<F%P
M860N;R`*"20H0T,I("0H3$9,04=3*2`M;R!G<F%P860@7`H)8VAA:6XN;R!R
M97-I<W1O<GDN;R!M96YU+F\@961I=&]R+F\@9W)A<&%D+F\*8VQE86XZ(`H)
M0"0H4DTI(&-H86EN+F\@<F5S:7-T;W)Y+F\@;65N=2YO(&5D:71O<BYO(&=R
M87!A9"YO(&=R87!A9"`J?@H*+F-P<"YO.@H)0"0H4DTI("1`"@DD*$-#*2`D
M*$-&3$%'4RD@+6,@)"HN8W!P"@IC:&%I;BYO.B!C:&%I;BYC<'`@8VAA:6XN
M:`IR97-I<W1O<GDN;SH@<F5S:7-T;W)Y+F-P<"!R97-I<W1O<GDN:`IM96YU
M+F\Z(&UE;G4N8W!P(&UE;G4N:`IE9&ET;W(N;SH@961I=&]R+F-P<"!E9&ET
9;W(N:`IG<F%P860N;SH@9W)A<&%D+F-P<```
`
end
こんなのはどう?
30名無しさん@お腹いっぱい。
NGNG311
NGNG こんにちは。なんかいっぱいレスがついていてうれしいです。
makefileについていろいろ書いてもらっていますが、
まだmakeの使い方がよく分かっていないので、勉強したいと思います。
今までずっとVisualC++を使ってきたのですが、違いに結構戸惑っています。
makefileについていろいろ書いてもらっていますが、
まだmakeの使い方がよく分かっていないので、勉強したいと思います。
今までずっとVisualC++を使ってきたのですが、違いに結構戸惑っています。
32名有りさん@お腹へった ◆fSunOs.U
NGNG >>29 変数定義にちょっと違和感がないでもないので......
begin 600 makefile.patch
M+2TM(&UA:V5F:6QE?@E&<FD@1&5C(#$T(#$R.C0Y.C,P(#(P,#$**RLK(&UA
M:V5F:6QE"49R:2!$96,@,30@,3(Z-3$Z,3,@,C P,0I 0" M,2PQ.2 K,2PR
M,"! 0 H@4DT@(" @(#T@<FT@+68*($5#2$\@(" ](&5C:&\*($-#(" @(" ]
M(&=C8PHM0T9,04=3(#T@+4\*+4Q&3$%'4R ]("UL;F-U<G-E<PHK0UA8(" @
M(#T@9RLK"BM#6%A&3$%'4R ]("U/"BM,1$9,04=3(#T@+6QC=7)S97,*( H@
M86QL.B!G<F%P860*(&=R87!A9" Z(&-H86EN+F\@<F5S:7-T;W)Y+F\@;65N
M=2YO(&5D:71O<BYO(&=R87!A9"YO( HM"20H0T,I("0H3$9,04=3*2 M;R!G
M<F%P860@7 HK"20H0T,I("0H3$1&3$%'4RD@+6\@9W)A<&%D(%P*( EC:&%I
M;BYO(')E<VES=&]R>2YO(&UE;G4N;R!E9&ET;W(N;R!G<F%P860N;PH@8VQE
M86XZ( H@"4 D*%)-*2!C:&%I;BYO(')E<VES=&]R>2YO(&UE;G4N;R!E9&ET
M;W(N;R!G<F%P860N;R!G<F%P860@*GX*( H@+F-P<"YO.@H@"4 D*%)-*2 D
M0 HM"20H0T,I("0H0T9,04=3*2 M8R D*BYC<' **PDD*$-86"D@)"A#6%A&
M3$%'4RD@+6,@)"HN8W!P"B *(&-H86EN+F\Z(&-H86EN+F-P<"!C:&%I;BYH
I"B!R97-I<W1O<GDN;SH@<F5S:7-T;W)Y+F-P<"!R97-I<W1O<GDN: II
end
begin 600 makefile.patch
M+2TM(&UA:V5F:6QE?@E&<FD@1&5C(#$T(#$R.C0Y.C,P(#(P,#$**RLK(&UA
M:V5F:6QE"49R:2!$96,@,30@,3(Z-3$Z,3,@,C P,0I 0" M,2PQ.2 K,2PR
M,"! 0 H@4DT@(" @(#T@<FT@+68*($5#2$\@(" ](&5C:&\*($-#(" @(" ]
M(&=C8PHM0T9,04=3(#T@+4\*+4Q&3$%'4R ]("UL;F-U<G-E<PHK0UA8(" @
M(#T@9RLK"BM#6%A&3$%'4R ]("U/"BM,1$9,04=3(#T@+6QC=7)S97,*( H@
M86QL.B!G<F%P860*(&=R87!A9" Z(&-H86EN+F\@<F5S:7-T;W)Y+F\@;65N
M=2YO(&5D:71O<BYO(&=R87!A9"YO( HM"20H0T,I("0H3$9,04=3*2 M;R!G
M<F%P860@7 HK"20H0T,I("0H3$1&3$%'4RD@+6\@9W)A<&%D(%P*( EC:&%I
M;BYO(')E<VES=&]R>2YO(&UE;G4N;R!E9&ET;W(N;R!G<F%P860N;PH@8VQE
M86XZ( H@"4 D*%)-*2!C:&%I;BYO(')E<VES=&]R>2YO(&UE;G4N;R!E9&ET
M;W(N;R!G<F%P860N;R!G<F%P860@*GX*( H@+F-P<"YO.@H@"4 D*%)-*2 D
M0 HM"20H0T,I("0H0T9,04=3*2 M8R D*BYC<' **PDD*$-86"D@)"A#6%A&
M3$%'4RD@+6,@)"HN8W!P"B *(&-H86EN+F\Z(&-H86EN+F-P<"!C:&%I;BYH
I"B!R97-I<W1O<GDN;SH@<F5S:7-T;W)Y+F-P<"!R97-I<W1O<GDN: II
end
NGNG
むしろ automake/autoconf を使い方を覚えた方がいいかも?
あ、でも素の makefile 書式も知らないとダメか...
あ、でも素の makefile 書式も知らないとダメか...
34名無しさん@お腹いっぱい。
NGNG 起動してすぐ下にカーソル移動しようとするとセグブります。
3534
NGNG Makefile は本読まないと無理だよ。本屋へ GO!
NGNG
いまさら、emacs, vim を超えることなど不可能
38名無しさん@お腹いっぱい。
NGNGNGNG
道のりは遠そうだけど育っていくのを見てるのは楽しいかも。
でもできるだけ早く最低限の機能を付けてウプするべし。
でもできるだけ早く最低限の機能を付けてウプするべし。
NGNG
NGNG
最近か?
10年前かた見るけど
10年前かた見るけど
NGNG
cygwinで動いたYO.
43名無しさん@お腹いっぱい。
NGNG >>40
最近かよ... 君なんで UNIX 板にいるの? (T-T
最近かよ... 君なんで UNIX 板にいるの? (T-T
NGNG
>>40
uudecode で復元できる。
uudecode で復元できる。
45あぼーん
NGNGあぼーん
461
NGNG 別にemacsやviを越えようなんて思ってませんよ。
元々「勉強しなくても誰でもすぐ使える」事を目的につくっていますので
余分な機能とかは今のところつけないつもりですし。
今日は1時間ほどやって、検索機能を付けました。
BM法もKMP法も使わない単純比較ですが、もう最近のCPUだと一瞬なんですね。
元々「勉強しなくても誰でもすぐ使える」事を目的につくっていますので
余分な機能とかは今のところつけないつもりですし。
今日は1時間ほどやって、検索機能を付けました。
BM法もKMP法も使わない単純比較ですが、もう最近のCPUだと一瞬なんですね。
NGNG
>>40
ish のほうがいい?
ish のほうがいい?
NGNG
491
NGNG GRAPADが完全に動作するのは次の3つを満たす環境です。
・カラーが使える
・ファンクションキーが使える
・日本語が使える
TeraTermの場合白黒端末なので動きません。
無理矢理うごかしてもファンクションキーを受け付けないのでメニューの操作ができません。
キーの入力については今後いろいろ調べてみたいと思うのですが、
とりあえず今は機種依存の解決よりエディタの機能の方を優先して作っています。
・カラーが使える
・ファンクションキーが使える
・日本語が使える
TeraTermの場合白黒端末なので動きません。
無理矢理うごかしてもファンクションキーを受け付けないのでメニューの操作ができません。
キーの入力については今後いろいろ調べてみたいと思うのですが、
とりあえず今は機種依存の解決よりエディタの機能の方を優先して作っています。
511
NGNG 機種依存というよりOS依存ですね…
NGNG
less + vi + migemo みたいなの希望。
コンソールでサクサク動くやつがいいな。
# まぁ less して v すりゃ vi 立ち上がるし、
# そういうアプローチが UNIX なんだろうけどさ。
コンソールでサクサク動くやつがいいな。
# まぁ less して v すりゃ vi 立ち上がるし、
# そういうアプローチが UNIX なんだろうけどさ。
53名無しさん
NGNGNGNG
NGNG
私も c++ で簡単なフリーソフトウェア書き中なのでちょっと見て、
あまりに気持ち悪いので適当に書きかえてた > Makefie
begin 644 Makefile
M(R!M86ME9W)A<&%D(&9O<B!G<F%P860*"B,@QOS+W+CLI,ZELZ7AI?.ER*3/
MQLFD\Z3`I.G!M,GTOL.DMZ3&I,TN"B,@**2]I*:DN:3KI,NDS\[CI*BDT+RA
MI/*\PKG4.@HC(&-P($UA:V5F:6QE($UA:V5F:6QE+F]R9R`F)B!S960@+64@
M)R]>(R]D)R!-86ME9FEL92YO<F<@/B!-86ME9FEL90HC("D*"@HC(*3HI*^[
MR*2FI.*DSJ3/I=ZEKZ7MQ.JUP2X@ON_%Y;SJP\HN(*2_I,"DM[#*LKRDS\6L
MQ?:DRJ3.I,>DHJ3>I.H*(R"_KLW1I+>DRJ2DI.BDIJ3++@IB:6Y?4%)/1U)!
M35,@/2!G<F%P860*"D1%1E,@/0I)3D-,541%4R`]"D-04$9,04=3(#T*(R!C
M*RL@I,ZEO:&\I;FDRJ3.I,<@9RLK(+O(I*8N(&=C8R"DQZ3BLO*\X:2WI,:D
MKZ3LI.NDPZ3=I*2DL:3LI,G)X<3,I,\@3D<*0UA8(#T@9RLK"B,@I.BDK[BK
MI.NEJJ77I;>EYZ7S+B#&PZ3+("U786QL(*3/I,2DL:2_ROVDK*2DI*2D\Z3'
MI,\_"D-86$9,04=3(#T@+5=A;&P@+6<@+4\R"DQ$1DQ!1U,@/2`M;&-U<G-E
M<PI,24)3(#T*"D-/35!)3$4@/2`D*$-86"D@)"A$1493*2`D*$E.0TQ51$53
M*2`D*$-04$9,04=3*2`D*$-&3$%'4RD*0UA83$0@/2`D*$-86"D*3$E.2R`]
M("0H0UA83$0I("0H0T9,04=3*2`D*$Q$1DQ!1U,I("UO("1`"@IG<F%P861?
M1$5014Y$14Y#2453(#T*9W)A<&%D7T]"2D5#5%,@/2`@961I=&]R+F\@8VAA
M:6XN;R!M96YU+F\@<F5S:7-T;W)Y+F\@8V]M;6]N+F\@9W)A<&%D+F\*9W)A
M<&%D7TQ$041$(#T@)"A,1$%$1"D*9W)A<&%D7TQ$1DQ!1U,@/0H*"B,@I+.D
MLZ2KI.FSQJ73I>NER;SJO>?)],JLI,NDQ*2DI,8*"F%L;#H@8G5I;&0*8G5I
M;&0Z(&=R87!A9`H*+F,N;SH*"20H0T]-4$E,12D@+6,@)#P*"B,@I+.DSLGT
MRJRPS<*XM-BWN*3.L-6_WJ2LI.BDKZ3OI*NDZ:2Z+B"BK*3.I,>DI*2DI/.D
MQZ3//PHC961I=&]R7V]?3T)*14-44R`](&-H86EN+F\@;65N=2YO(')E<VES
M=&]R>2YO"B-E9&ET;W)?;U](14%$15)3(#T@;65N=2YH(&QI;F5R+F@@9&EA
M;&]G+F@@<F5S:7-T;W)Y+F@*(PHC961I=&]R+F\@.B!E9&ET;W(N8W!P(&5D
M:71O<BYH("0H961I=&]R7V]?3T)*14-44RD@)"AE9&ET;W)?;U](14%$15)3
M*0HC"20H0T]-4$E,12D@+6,@)#P*"F=R87!A9"YO.B!G<F%P860N8W!P"@DD
M*$-/35!)3$4I("UC("0\"@IG<F%P860Z("0H9W)A<&%D7T]"2D5#5%,I("0H
M9W)A<&%D7T1%4$5.1$5.0TE%4RD*"4!R;2`M9B`D0`H))"A,24Y+*2`D*&=R
M87!A9%],1$9,04=3*2`D*&=R87!A9%]/0DI%0U13*2`D*&=R87!A9%],1$%$
M1"D@)"A,24)3*0H*"F-L96%N.B!M;W-T;'EC;&5A;BUC;VUP:6QE(&-L96%N
M+6)I;E!23T=204U3"FUO<W1L>6-L96%N+6-O;7!I;&4Z"@DM<FT@+68@*BYO
M(&-O<F4@*BYC;W)E"@IC;&5A;BUB:6Y04D]'4D%-4SH*"2UT97-T("UZ("(D
M*&)I;E]04D]'4D%-4RDB('Q\(')M("UF("0H8FEN7U!23T=204U3*0H*+E!(
M3TY9.B!A;&P@8G5I;&0@8VQE86X@;6]S=&QY8VQE86XM8V]M<&EL92!C;&5A
.;BUB:6Y04D]'4D%-4PH`
`
end
それと CEditor class などで constructor や destructor が未定義なのは
なぜ? CEditor::Init() なんて使わず、素直に constructor 定義して使った
方が楽なのではないかと思うが
あまりに気持ち悪いので適当に書きかえてた > Makefie
begin 644 Makefile
M(R!M86ME9W)A<&%D(&9O<B!G<F%P860*"B,@QOS+W+CLI,ZELZ7AI?.ER*3/
MQLFD\Z3`I.G!M,GTOL.DMZ3&I,TN"B,@**2]I*:DN:3KI,NDS\[CI*BDT+RA
MI/*\PKG4.@HC(&-P($UA:V5F:6QE($UA:V5F:6QE+F]R9R`F)B!S960@+64@
M)R]>(R]D)R!-86ME9FEL92YO<F<@/B!-86ME9FEL90HC("D*"@HC(*3HI*^[
MR*2FI.*DSJ3/I=ZEKZ7MQ.JUP2X@ON_%Y;SJP\HN(*2_I,"DM[#*LKRDS\6L
MQ?:DRJ3.I,>DHJ3>I.H*(R"_KLW1I+>DRJ2DI.BDIJ3++@IB:6Y?4%)/1U)!
M35,@/2!G<F%P860*"D1%1E,@/0I)3D-,541%4R`]"D-04$9,04=3(#T*(R!C
M*RL@I,ZEO:&\I;FDRJ3.I,<@9RLK(+O(I*8N(&=C8R"DQZ3BLO*\X:2WI,:D
MKZ3LI.NDPZ3=I*2DL:3LI,G)X<3,I,\@3D<*0UA8(#T@9RLK"B,@I.BDK[BK
MI.NEJJ77I;>EYZ7S+B#&PZ3+("U786QL(*3/I,2DL:2_ROVDK*2DI*2D\Z3'
MI,\_"D-86$9,04=3(#T@+5=A;&P@+6<@+4\R"DQ$1DQ!1U,@/2`M;&-U<G-E
M<PI,24)3(#T*"D-/35!)3$4@/2`D*$-86"D@)"A$1493*2`D*$E.0TQ51$53
M*2`D*$-04$9,04=3*2`D*$-&3$%'4RD*0UA83$0@/2`D*$-86"D*3$E.2R`]
M("0H0UA83$0I("0H0T9,04=3*2`D*$Q$1DQ!1U,I("UO("1`"@IG<F%P861?
M1$5014Y$14Y#2453(#T*9W)A<&%D7T]"2D5#5%,@/2`@961I=&]R+F\@8VAA
M:6XN;R!M96YU+F\@<F5S:7-T;W)Y+F\@8V]M;6]N+F\@9W)A<&%D+F\*9W)A
M<&%D7TQ$041$(#T@)"A,1$%$1"D*9W)A<&%D7TQ$1DQ!1U,@/0H*"B,@I+.D
MLZ2KI.FSQJ73I>NER;SJO>?)],JLI,NDQ*2DI,8*"F%L;#H@8G5I;&0*8G5I
M;&0Z(&=R87!A9`H*+F,N;SH*"20H0T]-4$E,12D@+6,@)#P*"B,@I+.DSLGT
MRJRPS<*XM-BWN*3.L-6_WJ2LI.BDKZ3OI*NDZ:2Z+B"BK*3.I,>DI*2DI/.D
MQZ3//PHC961I=&]R7V]?3T)*14-44R`](&-H86EN+F\@;65N=2YO(')E<VES
M=&]R>2YO"B-E9&ET;W)?;U](14%$15)3(#T@;65N=2YH(&QI;F5R+F@@9&EA
M;&]G+F@@<F5S:7-T;W)Y+F@*(PHC961I=&]R+F\@.B!E9&ET;W(N8W!P(&5D
M:71O<BYH("0H961I=&]R7V]?3T)*14-44RD@)"AE9&ET;W)?;U](14%$15)3
M*0HC"20H0T]-4$E,12D@+6,@)#P*"F=R87!A9"YO.B!G<F%P860N8W!P"@DD
M*$-/35!)3$4I("UC("0\"@IG<F%P860Z("0H9W)A<&%D7T]"2D5#5%,I("0H
M9W)A<&%D7T1%4$5.1$5.0TE%4RD*"4!R;2`M9B`D0`H))"A,24Y+*2`D*&=R
M87!A9%],1$9,04=3*2`D*&=R87!A9%]/0DI%0U13*2`D*&=R87!A9%],1$%$
M1"D@)"A,24)3*0H*"F-L96%N.B!M;W-T;'EC;&5A;BUC;VUP:6QE(&-L96%N
M+6)I;E!23T=204U3"FUO<W1L>6-L96%N+6-O;7!I;&4Z"@DM<FT@+68@*BYO
M(&-O<F4@*BYC;W)E"@IC;&5A;BUB:6Y04D]'4D%-4SH*"2UT97-T("UZ("(D
M*&)I;E]04D]'4D%-4RDB('Q\(')M("UF("0H8FEN7U!23T=204U3*0H*+E!(
M3TY9.B!A;&P@8G5I;&0@8VQE86X@;6]S=&QY8VQE86XM8V]M<&EL92!C;&5A
.;BUB:6Y04D]'4D%-4PH`
`
end
それと CEditor class などで constructor や destructor が未定義なのは
なぜ? CEditor::Init() なんて使わず、素直に constructor 定義して使った
方が楽なのではないかと思うが
56名無しさん@お腹いっぱい。
NGNGNGNG
NGNG
わ!これすごいねっ!
氏んで!!
氏んで!!
NGNG
neがライバルとなりそうな・・・
NGNG
ne ってまだメンテされてるの?
NGNG
Debian Gnu/Linuxです.
起動はしたもののCtrl-cでしか終了できない.
HHKだからFunctionキーが使えないのか?
xevではちゃんと認識してるんだけど..
キーコードが違うのかな?
期待age.
起動はしたもののCtrl-cでしか終了できない.
HHKだからFunctionキーが使えないのか?
xevではちゃんと認識してるんだけど..
キーコードが違うのかな?
期待age.
621
NGNG コンストラクタで初期化していないのは、Windowsの頃の癖です。
MFCもそうですし、DirectXなどもそうです。
でも明らかに独立していそうなクラスはコンストラクタで初期化しています。
メニューが開けないという人が多いようですが、
キー処理をもっとちゃんとやれば対応できると思います。
特殊なキーを押すと、^[[@とかいうコントロールコードのようなものが
入力されてくるみたいですが、これを一つずつひろっていけばできそうです。
こういった連続したコントロールコードを一つの文字として解釈するモードが
cursesライブラリに用意されていて、今はそれを使っているのですが、
どうやらあまり信用できないみたいですね。
インクリメンタルサーチやmigemoは、導入するとしても相当あとになると思います。
MFCもそうですし、DirectXなどもそうです。
でも明らかに独立していそうなクラスはコンストラクタで初期化しています。
メニューが開けないという人が多いようですが、
キー処理をもっとちゃんとやれば対応できると思います。
特殊なキーを押すと、^[[@とかいうコントロールコードのようなものが
入力されてくるみたいですが、これを一つずつひろっていけばできそうです。
こういった連続したコントロールコードを一つの文字として解釈するモードが
cursesライブラリに用意されていて、今はそれを使っているのですが、
どうやらあまり信用できないみたいですね。
インクリメンタルサーチやmigemoは、導入するとしても相当あとになると思います。
63名無しさん
NGNG 漏れもエディタ作ったYO!
editor.c
>#include "/dev/tty"
ネタにつきsage
がんばれよー。
editor.c
>#include "/dev/tty"
ネタにつきsage
がんばれよー。
64名無しさん@お腹いっぱい。
NGNG 応援上げ!
NGNG
エディタマクロとして perl が使えれば海外でも流行るんじゃないかと思うんだ
けど・・・そーゆーエディタってあんの?
# 国内的には ruby なのかもしれんけど
けど・・・そーゆーエディタってあんの?
# 国内的には ruby なのかもしれんけど
NGNG
>>65
あいだをとってPythonというのは?
あいだをとってPythonというのは?
67名無しさん@お腹いっぱい。
NGNG >>65-66
vimだとperl/ruby/python/tclが使えちゃうんだよねぇ
vimだとperl/ruby/python/tclが使えちゃうんだよねぇ
NGNG
ここはマニアックにHaskell/Prolog/Smalltalkとか。
関係ないけど、emacsのようなソフトってLispよりもSmalltalkの方が似合うと思うんですけど、どうなんでしょう?
関係ないけど、emacsのようなソフトってLispよりもSmalltalkの方が似合うと思うんですけど、どうなんでしょう?
69名無しさん
NGNG あー、Smalltalk 使えたらかなーりいいかも。
というか、欲しくなっちゃったじゃないか...
まあ、半歩譲って CLOS あたりでもいいや。
というか、欲しくなっちゃったじゃないか...
まあ、半歩譲って CLOS あたりでもいいや。
7068
NGNG > LispよりもSmalltalk
これは言語のことだけじゃなくて、ソフト全体のことです。
「とりあえずSmalltalkでマクロが組めるようにしてみた」とか、
「xyzzy用にCLOSを作った」とか、そういうことじゃなくて。
これは言語のことだけじゃなくて、ソフト全体のことです。
「とりあえずSmalltalkでマクロが組めるようにしてみた」とか、
「xyzzy用にCLOSを作った」とか、そういうことじゃなくて。
NGNG
じゃあSqueakでエディタ造ったらえーやんけ。
仮想マシンだぞ。カスタマイズし放題。
という話に・・・
仮想マシンだぞ。カスタマイズし放題。
という話に・・・
72名無しさん
NGNG そしたら WikiWiki しちゃうね。
っていうか、Squeak = Wiki ってイメージが。
っていうか、Squeak = Wiki ってイメージが。
73応援します
NGNG emacsやviとはまったく違ったエディタを是非目指してほしい.
emacsやviの亜流をめざしても所詮亜流にしかならないが,
うまくいけば第3の標準エディタになれるかもしれない.
(vi/emacs以外のユーザごめん)
カスタマイズする言語のウケがよければはやるかもね.
ではがんばって!
emacsやviの亜流をめざしても所詮亜流にしかならないが,
うまくいけば第3の標準エディタになれるかもしれない.
(vi/emacs以外のユーザごめん)
カスタマイズする言語のウケがよければはやるかもね.
ではがんばって!
NGNG
最近 1 来ないね。
75名無しさん
NGNG というか、既存のカスタマイズ方法の枠組みを超えてみるとか。
なにげなく使ってるとかってにカスタマイズされてくみたいな。
なにげなく使ってるとかってにカスタマイズされてくみたいな。
NGNG
というか、既存の入力方法の枠組みを超えてみるとか。
なにげなく思ってるとかってに入力されてくみたいな。
なにげなく思ってるとかってに入力されてくみたいな。
NGNG
というか、既存の開発方法の枠組みを超えてみるとか。
なにげなく煽ってるとかってに開発されてくみたいな。
なにげなく煽ってるとかってに開発されてくみたいな。
NGNG
というか、既存の仕事の枠組みを超えてみるとか。
なにげなく2ちゃん見てるとかってに終ってるみたいな。
なにげなく2ちゃん見てるとかってに終ってるみたいな。
NGNG
というか、既存の人生の枠組みを超えてみるとか。
なにげなく生きていると知らぬ間に逝ってるみたいな。
なにげなく生きていると知らぬ間に逝ってるみたいな。
80名無しさん@お腹いっぱい。
NGNG おぉ〜い!1はどうした!?
俺は、密かに応援してるぞ!
がんばれ〜〜
俺は、密かに応援してるぞ!
がんばれ〜〜
81例の騒ぎで来た人
NGNG フラッシュ騒ぎでこの板に来て、Linuxを使ってみようと思っていますが、
>>1さん、その他有志の開発協力者のみなさん、
がんばって育ててください。期待しています。
Windowsなどから流れてきたユーザーに的を絞ってはいかがでしょうか?
>>1さん、その他有志の開発協力者のみなさん、
がんばって育ててください。期待しています。
Windowsなどから流れてきたユーザーに的を絞ってはいかがでしょうか?
NGNG
83名無しさん@お腹いっぱい。
NGNG >1
終わらすのはもったいなくないかい?
卒業しちゃうのかな?
終わらすのはもったいなくないかい?
卒業しちゃうのかな?
84名無しさん@お腹いっぱい。
NGNG Unixenにとって、エディタまで乗り換えなきゃいけないのが障壁だからなあ
Smalltalkは..>>68
キーボードだけで使える smalltalk環境つくってよ!!
っていうか、やっぱり Lispマシン環境もあこがれるぞ。
symbolics emulatorほしい...
Smalltalkは..>>68
キーボードだけで使える smalltalk環境つくってよ!!
っていうか、やっぱり Lispマシン環境もあこがれるぞ。
symbolics emulatorほしい...
85名無しさん@お腹いっぱい。
NGNG age
861
NGNG 更新が滞っていてすみません。
いろいろな端末エミュレータやFreeBSDなどにも対応させるため、
キー入力の時入ってくる連続した数値をいろいろ調べています。
現段階でktermに対応させました。
いろいろな端末エミュレータやFreeBSDなどにも対応させるため、
キー入力の時入ってくる連続した数値をいろいろ調べています。
現段階でktermに対応させました。
87名無しさん@お腹いっぱい。
NGNG なんか、間違った努力してるような気がするが…
88名無しさん@お腹いっぱい。
NGNG >>87
いや、全く無駄とは思わないが。
いや、全く無駄とは思わないが。
89名無しさん@お腹いっぱい。
NGNG がむばれ
NGNG
がむばってるかぁ〜
NGNG
ねぇ〜、>>1のホムペは何処逝ったの?
92名無しさん@お腹いっぱい。
NGNG >Windowsなどから流れてきたユーザーに的を絞ってはいかがでしょうか?
それいいね!!
UNIXで初めてviやEmacsを扱ったとき
(私はMacから入った人です)
「なんじゃこりゃ?」
と思いました…
それいいね!!
UNIXで初めてviやEmacsを扱ったとき
(私はMacから入った人です)
「なんじゃこりゃ?」
と思いました…
931
NGNG えーと、楽しみにしてくれてる方々本当にすみません。
3学期のテストが終わったらまた再開しますので・・・。
春休みに一気にプログラミングするつもりですので、もうちょっと待っててください。
3学期のテストが終わったらまた再開しますので・・・。
春休みに一気にプログラミングするつもりですので、もうちょっと待っててください。
NGNG
途中経過キボン
95名無しさん@お腹いっぱい。
NGNG がんばれage
NGNG
1来ないな〜
とうとうtermcap(5)、termios(4)あたりに到達して勉強中かな?
それかこのあたりを許せずにVCに帰っちゃったとか(W
とうとうtermcap(5)、termios(4)あたりに到達して勉強中かな?
それかこのあたりを許せずにVCに帰っちゃったとか(W
NGNG
1が戻った時にここがなかったらあまりに気の毒なので保全カキコ
981
NGNG 製作再開しています。
春休みにやるとか93で言ってますが、基本情報技術者の試験とかいろいろで
忙しくてできませんでした。おまけに留年してしまったし・・・
まあ個人的なことはともかく、そのうち上げますので。
春休みにやるとか93で言ってますが、基本情報技術者の試験とかいろいろで
忙しくてできませんでした。おまけに留年してしまったし・・・
まあ個人的なことはともかく、そのうち上げますので。
NGNG
http://www.geocities.co.jp/SiliconValley-Cupertino/3751/grapad04.tgz
sageでこっそり更新・・・
ktermに対応しました。検索機能がつきました。他バグをいろいろとりました。
sageでこっそり更新・・・
ktermに対応しました。検索機能がつきました。他バグをいろいろとりました。
1001
NGNG http://www.geocities.co.jp/SiliconValley-Cupertino/3751/grapad041.tgz
今日はageで更新。置換機能が付きました(一斉置換のみ)。
XWindow版を作ろうかと考えています。
と言ってもまだなにも分からないんですよねえ。HelloWorldしかできないです。
今日はageで更新。置換機能が付きました(一斉置換のみ)。
XWindow版を作ろうかと考えています。
と言ってもまだなにも分からないんですよねえ。HelloWorldしかできないです。
1011
NGNG ウィンドウとかはともかく、一番分からないのはIMです。
Grapadをコンソールで作ってたのは、はじめから日本語変換が使えるからという理由からでした。
そうでなければ最初からWindowでやってましたから。
というわけで先ほど質問スレに書いたところ、いいサイトを教えてもらったので
今読んでいるところです。
Grapadをコンソールで作ってたのは、はじめから日本語変換が使えるからという理由からでした。
そうでなければ最初からWindowでやってましたから。
というわけで先ほど質問スレに書いたところ、いいサイトを教えてもらったので
今読んでいるところです。
1021
NGNG というわけで今日は寝ます。ではまた。
NGNG
お。もうこねーだろうなと思ってたよ。
まーがんばれや!
...リュー年にめげず(イヂワル
まーがんばれや!
...リュー年にめげず(イヂワル
NGNG
NGNG
NGNG
まあでも、就職の面接の時なんかに
「一度留年されてるそうですが、どうしてですか?」
「エディタ作ってました。」
なんてのはちょっと カコ(・∀・)イイ!!かも。がんがれ〜
「一度留年されてるそうですが、どうしてですか?」
「エディタ作ってました。」
なんてのはちょっと カコ(・∀・)イイ!!かも。がんがれ〜
107103
NGNG オイオイ俺はイヂワルなようでいて実はヤンワリとなぐさめているのに
キミ>105のは一撃でトドメさしてるぞ(w
#そしてこのネタ引っ張るほど1が落ち込んでいくという罠。
キミ>105のは一撃でトドメさしてるぞ(w
#そしてこのネタ引っ張るほど1が落ち込んでいくという罠。
1081
NGNG まあ、エディタ作るの再会したのは、留年したからという理由もあるんですがね。
毎日かなり暇です。
毎日かなり暇です。
NGNG
C++なんだし、Qt を使ってみては?
Xlib を直接使うと自前ライブラリを作りたくなる罠だし。
Xlib を直接使うと自前ライブラリを作りたくなる罠だし。
NGNG
>>109
GUIはオプショナルに留めてほすぃ。。。
GUIはオプショナルに留めてほすぃ。。。
NGNG
--enable-gui をつけよう
NGNG
GtkにしようかQtにしようかと迷っていたんですが、
結局Xtで作っています。Xaw3dはダサダサで、
僕の目指しているグラフィカルなエディタとは大きくかけ離れているので
XawXpmを代わりに使っています。
結局Xtで作っています。Xaw3dはダサダサで、
僕の目指しているグラフィカルなエディタとは大きくかけ離れているので
XawXpmを代わりに使っています。
1131
NGNG CとC++用のコメント強調機能を付けました。
http://www.geocities.co.jp/SiliconValley-Cupertino/3751/software/grapad042.tgz
簡単な紹介のページを作りました。
http://www.geocities.co.jp/SiliconValley-Cupertino/3751/software/grapad.htm
http://www.geocities.co.jp/SiliconValley-Cupertino/3751/software/grapad042.tgz
簡単な紹介のページを作りました。
http://www.geocities.co.jp/SiliconValley-Cupertino/3751/software/grapad.htm
NGNG
試しにいれてみますた。
wmのionがファンクションキーを全て取ってしまっているので、
いきなり操作不能に陥ってしまいますた。
気を取り直してコンソールで実行したら、メニューが全て文字化けして
しまいました(日本語に対応してないから当り前か…)
でも、簡素な作りには好感が持てます。
ee代替を目指してがんがれ!
wmのionがファンクションキーを全て取ってしまっているので、
いきなり操作不能に陥ってしまいますた。
気を取り直してコンソールで実行したら、メニューが全て文字化けして
しまいました(日本語に対応してないから当り前か…)
でも、簡素な作りには好感が持てます。
ee代替を目指してがんがれ!
NGNG
>>1がんばれよ!
NGNG
落ち着いたら STL を使ってみようと、言ってみるテスト
117名無し
NGNG がんばってるか〜?
1181
NGNG OSや、端末エミュレータの種類によってキーバインドが異なるので面倒ですね。
cursesについているkeypad()を使えばその辺りを吸収してくれるのですが、
値をキーの種類ではなく、emacsのショートカットキーで返して来るのでよく分かりません。
私はほとんどemacsを使ったことが無いのです・・・
cursesについているkeypad()を使えばその辺りを吸収してくれるのですが、
値をキーの種類ではなく、emacsのショートカットキーで返して来るのでよく分かりません。
私はほとんどemacsを使ったことが無いのです・・・
レスを投稿する
ニュース
- ■緊急地震速報 熊本など [人気者★]
- 性売買「買う側」処罰化と同時に「売る側は処罰せず、支援の対象に」Colabo主催の集会にて [パンナ・コッタ★]
- 相次ぐ中国公演中止に、シンガーソングライターらが続々高市首相に怒り表明「隣国の仲間たちに対して申し訳ない」 [muffin★]
- 【足立区ひき逃げ事故】意識不明の20代女性が死亡 死者2人に [Ailuropoda melanoleuca★]
- NHKの災害情報、閲覧に「ユーザー登録必要」で批判の声多数 [少考さん★]
- とろサーモン・久保田「後輩や演者からも評判が悪すぎる」大物MCに意見 「世間が思ってる人間とは真逆」と思い爆発 [muffin★]
- ほんこん さん「安全保障やセキュリティクリアランスに疎い方には国家は任せれません。やはり選挙がいかに大事か!」久々に自分で語る [201193242]
- しじみ [546716239]
- 【悲報】NHK党が消滅!立花孝志が齊藤健一郎議員の離党を承認 [977790669]
- 大地震 [904880432]
- 大震災
- 【安倍晋三】山上徹也は暴力を使った。お前らはそれを認め許すの? [201193242]
