サクラエディタふぁんくらぶ part17 [転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
垢版 |
2014/11/08(土) 17:51:19.79ID:Kybl/hJ50
前スレ
サクラエディタふぁんくらぶ part16
http://anago.2ch.net/test/read.cgi/software/1372823376/

■公式・参考
サクラエディタ
http://sakura-editor.sourceforge.net/
※SourceForge Project Homeや各掲示板、サクラの小枝研など
  関連ページへのリンクは此処から

SakuraEditorWiki
http://sakura.qp.land.to/
SourceForge.net: sakura-editor ≫ 開発に参加したい方へ
http://sakura-editor.wiki.sourceforge.net/Join
sakura editor利用に必要なファイル
http://www.geocities.jp/maru3128/sakura.html

正規表現ライブラリ bregonig.dll Ver.3.06, 2.09
http://homepage3.nifty.com/k-takata/mysoft/bregonig.html
0631名無しさん@お腹いっぱい。
垢版 |
2015/11/02(月) 00:19:50.61ID:W2YibJn30
>>625
マイクロソフトのVisual Studioとかだと「hoge.exe.config」とか
複数のピリオドを含むファイル名が普通にあるから
入力したままのファイル名になってくれた方が良い場合ってのはある。
0632名無しさん@お腹いっぱい。
垢版 |
2015/11/02(月) 20:47:33.11ID:Qt7nxyxY0
2.3.0.0
下記の設定の場合、行頭の改行が削除できない
改行コードが、LF
文字の間隔が、1ドット
0633名無しさん@お腹いっぱい。
垢版 |
2015/11/03(火) 10:59:00.16ID:bXXe9VHC0
起動して Enter連打、バックスペース連打で再現した。>>632
設定は文字の間隔 5 ドット、CRLF改行。
他の問題をテストしてたときになんで気付かなかったんだろう。
0634名無しさん@お腹いっぱい。
垢版 |
2015/11/03(火) 13:46:08.82ID:bXXe9VHC0
最低限これで改行は削除できるようになる。
nNxtPosの求め方は else節にあったもののコピペ。
バイト単位をレイアウト単位に強制変換してたのが原因と思う。

Index: sakura_core/view/CEditView_Command_New.cpp
===================================================================
--- sakura_core/view/CEditView_Command_New.cpp (リビジョン 4053)
+++ sakura_core/view/CEditView_Command_New.cpp (作業コピー)
@@ -636,7 +636,7 @@
if( WCODE::IsLineDelimiter(pLine[nCurIdx], bExtEol) ){
/* 改行 */
nNxtIdx = nCurIdx + pcLayout->GetLayoutEol().GetLen();
- nNxtPos = GetCaret().GetCaretLayoutPos().GetX() + CLayoutInt((Int)pcLayout->GetLayoutEol().GetLen()); //※改行コードの文字数を文字幅と見なす
+ nNxtPos = LineIndexToColumn( pcLayout, nNxtIdx );
}
else{
nNxtIdx = CLogicInt(CNativeW::GetCharNext( pLine, nLineLen, &pLine[nCurIdx] ) - pLine);
0635名無しさん@お腹いっぱい。
垢版 |
2015/11/03(火) 14:52:32.63ID:bXXe9VHC0
訂正。改行分としてテキトーに 100 足しても改行は削除される。
634は本当の解決ではない。反対に CLayoutIntに 2 だけ足しても
その後のレイアウト→ロジック変換で正しく 2 文字扱いになってる。
0636名無しさん@お腹いっぱい。
垢版 |
2015/11/03(火) 15:04:06.74ID:bXXe9VHC0
訂正の後半の訂正。失敗してるのはレイアウト→ロジック変換。
正しいと思った Logic座標は単純に2足して求めたものだった。
ちょっと頭冷やしてくる。
0638名無しさん@お腹いっぱい。
垢版 |
2015/11/04(水) 11:03:26.23ID:ycMZJh4Z0
1.キャレットの右の文字を削除したい
2.キャレットの画面座標(行,桁pixel)ならわかる
3.その位置にある文字はなんだろう
4.行の始めから文字と文字幅を加算していって調べるで
5.座標のペアで範囲を指定して置換する関数にお仕事依頼

本質的な疑問に対しては、基礎的な関数のパラメータが画面
座標系だからそうなってるのかなと思う。2,3,4の変換を減
らす努力もなされてるみたいだけど、最近のことなのでよく
知らない。JavaScript+DOMで例えると、.clientXXX(画面座標)
を参照しないでいいようにすることで強制リフローを抑制す
る、みたいな流れだと想像してる。
0639名無しさん@お腹いっぱい。
垢版 |
2015/11/04(水) 20:16:13.07ID:Fv38m2PY0
本家SVN:等幅フォントのみに戻す
もか氏のGithub:プロポーショナルフォント版

こういう棲み分けでいいと思うの
0640名無しさん@お腹いっぱい。
垢版 |
2015/11/04(水) 21:52:18.06ID:m/PDozwX0
自分は未導入なのでアレだけど
プロポーショナルフォント対応って
どのくらい地雷を抱えているのかな…

「IT用途の職場でだけ使う」という前提なら、今後数年くらい、
2.2.x.xのままバグフィクス+小規模な機能追加(ブラッシュアップ程度の変更)
だけしてくれれば十分な気もする

プロポーショナルフォントとか折り畳み機能なんかは
あっても邪魔ではないけれど
それを導入することで既存機能に悪影響が出るくらいなら要らないかなぁ

個人的には、ツールバーアイコンを高解像度ディスプレイ(4Kとか8Kとかの)
に対応させることのほうが、ずっと安全に実装できるし、実用的なんじゃないか?
と思ったりもする

#これは個人的な感想です
#効果を保証するものではありません
0641名無しさん@お腹いっぱい。
垢版 |
2015/11/05(木) 12:35:24.27ID:bItrCb1a0
もしかしてそれは右手なりを移動させてマウスを握ってマウスを動かしてツールバーアイコンをポチポチ押すの?
0642名無しさん@お腹いっぱい。
垢版 |
2015/11/06(金) 00:11:54.98ID:/hGqofhy0
「マウスを握ってマウスを動かして」
何も思考しないタイピストでもない限り
こんなの生産性に影響するほどの操作ではない

人間の思考速度のほうがよほど影響が大きい
0643名無しさん@お腹いっぱい。
垢版 |
2015/11/06(金) 00:15:58.81ID:/hGqofhy0
「マウスを握ってマウスを動かして」
が思考に追いつかないほど遅いのならば
それはお前の運動能力が足りないだけの話
0644名無しさん@お腹いっぱい。
垢版 |
2015/11/06(金) 09:06:30.18ID:+t+DgbeS0
確かに641ほどの運動音痴では思うままに線を引く事自体無理っぽいな
絵を描く事を止めた方が幸せだと思う
0646名無しさん@お腹いっぱい。
垢版 |
2015/11/07(土) 11:45:05.32ID:i7tOPbyi0
>>642 >>644
わざわざマウスポインタをその場所に移動させて正確にクリックするんだぞ?
面倒じゃないのか?

原理的には、ツールバーアイコンとして表現できる操作は、全部、キー割り当てすることができる
それは本当にマウスだけでしか出来ないような操作だとは思えない
キー割り当てで代理出来ることをアイコンにしている意図が分からない

そしてそもそも、ツールバーは本当に実用的なのか?
というのも、こちらは全くツールバーを使ってないので、その利便性が全く分からない
メニューバーに表示させるアイコンもOFFにしている
ただ、中には、ツールバーでのアイコンの形と場所で操作を記憶してる人もいるのかもしれないが、
彼らがどうやってツールバーアイコンを使いこなしてるのか、こちらには全く想像できない

他人のエディタのツールバーの配置やアイコンの個数の実態なんて誰も知らないからだ
それがどう使われてるかなんてのは本当に分からない
0648名無しさん@お腹いっぱい。
垢版 |
2015/11/07(土) 15:07:44.40ID:5TZEFN6D0
>>646
自分はソフトウェア開発会社に勤務しているけれど
周囲の人がテキストエディタをどう使っているのか気になって観察してる
何十人もの人を見てきたが

ツールバーを非表示にしている人には未だ出会っていない

君自身がツールバーをどれだけ不要だと主張しようとも
申し訳ないが、君は少数派なのだと断定せざるを得ない

君は君で自分の最適な使い方を続ければいいが
どれだけ他人に自分の意見を知らしめようとしても限界というものがある
黙っておくのが吉
0649名無しさん@お腹いっぱい。
垢版 |
2015/11/07(土) 16:15:02.53ID:5TZEFN6D0
そもそも

「テキストエディタでマウス使ったら負け」
くらいに思ってるのなら

いっぺん vim を使ってみることをお勧めする
0650名無しさん@お腹いっぱい。
垢版 |
2015/11/07(土) 16:28:45.49ID:i7tOPbyi0
不要とまでは言ってはいない
ツールバーがどうして実用的なのか全く分からない、と言ってるだけで
使ったことが無いから、どうしてそれが便利だと他人が思ってるのか、そもそもどうやって使ってるのか、全然分からない

それに、ツールバーを使う人がそこに何を置いてるのかも気になる
作業中に何度それらのアイコンを押すのかも
0652名無しさん@お腹いっぱい。
垢版 |
2015/11/07(土) 16:41:17.15ID:5TZEFN6D0
>>650
少なくとも、他人を理解しよういう努力をしてない
つまり、他人を全く観察してない
のに

「なんで必要かわからない」

なんて主張する(=公言する)こと自体が間違ってるんだ
他人を観察したうえで出直すことをお勧めする
0654名無しさん@お腹いっぱい。
垢版 |
2015/11/07(土) 16:57:51.43ID:EFbrRW6g0
よく使う機能は[Ctrl]+[S]などのショートカットキーだけでなく、ツールバーからの1クリックでも操作したい。
そう思う事も結構あるから俺はツールバーを表示してる。どっちが多数派かは知らん。
0656名無しさん@お腹いっぱい。
垢版 |
2015/11/07(土) 21:25:18.19ID:9O1YKh0V0
自分はノートPCメインのキーボード派だから、ツールバーは非表示にしてるけど、
ツールバー表示がデフォルトなので、表示=使っているとは限らないと思う。

しかし、なぜ vim を使ってみろということになるのかさっぱり分からない。
vi はキーバインドが Windows と全然違うから、元に戻す/やり直し/コピー/切り取り/貼り付け のし方が分からない。
さすがに、文字の入力と、保存して閉じる、保存せず閉じる、は覚えたけど、普段使わないしなぁ。
0657名無しさん@お腹いっぱい。
垢版 |
2015/11/07(土) 22:05:36.31ID:5TZEFN6D0
Windowsキーバインドから抜けられない
ということが理解できるのに
ツールバーから離れられない
ということが理解できない

おかしいだろそれ
0658名無しさん@お腹いっぱい。
垢版 |
2015/11/07(土) 22:22:49.57ID:5TZEFN6D0
テキストエディタだけが特別な存在なのか?
他のソフトもツールバーを使わないのか?

Windowsキーバインドなら必要だけど
ツールバーは不要だなどど

どの口がほざくのか?
0659名無しさん@お腹いっぱい。
垢版 |
2015/11/07(土) 22:36:06.92ID:9O1YKh0V0
なるほど、普段使わない人からすれば、目立つところに保存ボタンがあった方が便利かもしれないね。
でも、Windows ならいろんなソフトで、保存/元に戻す/コピー/切り取り/貼り付け のキーバインドは同じだから、
やっぱり、それぐらいは覚えないのかなぁとは思うよ。
もちろん、いちいち他人の使い方に口出しはしないし、僕だって、人から見たら変な使い方をしていると思われるところもあるだろうし。

っていうか、なんでそんなに一所懸命なのかが気になるよ。
ツールバーがなくなりそうな危機感でもあるの?
0660名無しさん@お腹いっぱい。
垢版 |
2015/11/07(土) 22:42:17.60ID:5TZEFN6D0
自分基準でしか考えてないのに
いちいち「分からない」って言い放つ奴らが気に食わないだけだよ

これで「分かる」?
0661名無しさん@お腹いっぱい。
垢版 |
2015/11/07(土) 22:53:08.37ID:ZpdaHW/X0
検索(ボックス)を置いとくと便利だけどね
検索方法を変更するときはダイアログ開き直さなきゃだけど
0663名無しさん@お腹いっぱい。
垢版 |
2015/11/07(土) 23:23:11.12ID:9O1YKh0V0
> テキストエディタだけが特別な存在なのか?
> 他のソフトもツールバーを使わないのか?
少なくとも僕の場合は、大抵のソフトでは、キーボードからアクセスできないツールバーは非表示だなぁ。
ペイントソフトとか、マウスの操作がメインになるソフトは別だね。

>>660
よく分かりました。
0664名無しさん@お腹いっぱい。
垢版 |
2015/11/08(日) 00:10:43.47ID:np3/tYW/0
Excelとか使ってるとマウスでないとできない操作まみれなので、
キーボードで使う気が失せる
0665名無しさん@お腹いっぱい。
垢版 |
2015/11/08(日) 00:30:52.07ID:5WlS82OX0
自分も非表示派だったけど操作可能なステータスバーとして
利用するようになったよ。
どのエンコーディングで開いているかが見てわかるし、文字
化けしていればすぐ開き直すことができる。マウスでもキーボ
ードでもどちらででも。
改行の種類の表示と切り替えもできる。
検索ボックスを置いとくとブラウザやエクスプローラと同じ
ように Ctrl+E でフォーカスを移して検索できる。

こう書いといてなんだけど、Enterで入力される改行の種類
の切り替えや挿入/上書きモードの切り替えはステータスバー
からでもできる。俺はソースを見ていて気付いたけど、みなさ
ん知っていただろうか。

あと、HTMLと JavaScriptだとか Rubyと JavaScriptみた
いに1ファイルにコードが混在する場合に、現在のタイプ別設
定を確認したり切り替えたりするのを簡単にするためにツール
バーに自作のリストボックスを置いてる。すごく便利に使って
るんだけどこのアイディアは今のところスルーされていて需要
ないのかなぁなんて。

ノートパソコンで縦が1000もないとかでなければツールバーを
邪険にすることないよ。
0666名無しさん@お腹いっぱい。
垢版 |
2015/11/08(日) 10:31:53.15ID:cIL/xVkB0
初心者なんですがスミマセンお邪魔します

サクラエディタでファイル作って保存して終了して、次に開くときに、
ダブルクリックからそのままサクラエディタで開ける時と
「プログラムを選べ」と余計なワンクッションが入る時があります
そのまま一発でサクラエディタで開けるようにしたいんですが、
どうすればいいですか?
0667名無しさん@お腹いっぱい。
垢版 |
2015/11/08(日) 11:22:19.47ID:kG6OOtTn0
>>646
メニューもツールバーもステータス表示もない完全キーボード操作版のサクラエディタを作って下さい。
まぁ、MS-BASICの頃はそれがデフォルトでしたけどねw
0669666
垢版 |
2015/11/08(日) 14:46:49.31ID:cIL/xVkB0
>>668
レスありがとうございます
設定>タイプ別設定一覧 に「ダブルクリックで開く」のチェックボックスは
見つけましたが、チェックができないです(紗がかかっている)
開きたい種類はテキストなんだけど、テキストでもHTMLでもどれでも(「右
クリックメニューに追加」はチェックできるのに)ダブル〜の方はダメでした
もう少し深いところでの設定か何かでしょうか?
すみませんがもう少しよろしくお願いします
0676名無しさん@お腹いっぱい。
垢版 |
2015/11/11(水) 21:43:43.15ID:vG6JmxbC0
ctrl-F1とctrl-shift-Uな

要る時はずっと要るから、あんまり頻繁に出したりひっこめたりはしないけど
0677名無しさん@お腹いっぱい。
垢版 |
2015/11/12(木) 09:59:27.67ID:2A7bQkqo0
設定画面のモーダルウィンドウの奥深くのチェックボックスなどは
大抵はツールバーアイコンにすらできない
でも、そういうのをアイコン化して前面に置きたい……という欲望はある
が、やはり全機能をそうするわけにはいかないし、できないだろうとの直感がある
0680名無しさん@お腹いっぱい。
垢版 |
2015/11/19(木) 08:04:32.89ID:+JwuGNOW0
改行記号消す程度ならsakuraでもできるけどどんどん遅くなるよね
そういう問題なく複数行置換可能になるなら有難いのだが
0681名無しさん@お腹いっぱい。
垢版 |
2015/11/20(金) 01:18:01.41ID:OCb8GG2v0
>>678
そういう時だけ、別のエディタを使う

複数行処理機能を追加しようとすると抜本改造が必要になりそうだから
フリーソフトのままでは難しいと思う
0682名無しさん@お腹いっぱい。
垢版 |
2015/11/20(金) 06:00:46.02ID:OMKoR6mh0
他のエディタの複数行検索ってどういう感じなの?
改行を無視して検索する?
正規表現で改行コードを含めて検索するってこと?
0683名無しさん@お腹いっぱい。
垢版 |
2015/11/20(金) 06:46:45.39ID:uu9eRCdl0
行番号に紐付けされたブックマークやら更新情報やらを維持したまま複数行置き換えするのが難しいんでしょ
そのへんリセットされてもいいから置き換えたいって需要はあると思うが
0685名無しさん@お腹いっぱい。
垢版 |
2015/11/20(金) 07:40:40.13ID:uu9eRCdl0
>>684
それだとUIまで別系統になってあえてサクラでやらなくてもいいって事に
サクラの検索ダイヤログの設定やら記録も使いたいでしょ
0687名無しさん@お腹いっぱい。
垢版 |
2015/11/21(土) 00:08:22.42ID:WCdDJ9Dz0
>>686
ユーザーをクレーマーとしか見てないのか
もしこれが開発陣の総意だったらサクラも終わりだな
0690名無しさん@お腹いっぱい。
垢版 |
2015/11/21(土) 12:35:33.26ID:NTkGyTIw0
>>687
なわけないだろ
そういうこと言って周囲に疑念を抱かせるように仕向けて
開発者にプレッシャーかける奴がクレーマーなんだよ
0695名無しさん@お腹いっぱい。
垢版 |
2015/12/12(土) 00:05:29.28ID:H3i6Bo4n0
ブラウザーの種類は問わず、そこからAlt+Tabでサクラに切り替えると描写に1,2秒かかってしまう
1.6で試したところ、多少もたつくもののここまで遅くはない
困ったものだ
0697名無しさん@お腹いっぱい。
垢版 |
2015/12/19(土) 12:54:49.62ID:rBMHThmh0
sakura.iniがインストールフォルダと\AppData\Roaming\sakuraの2つにあるんですけど
どういう関係なんですか。どっちが優先されるとかありますか
0703名無しさん@お腹いっぱい。
垢版 |
2015/12/23(水) 16:45:28.19ID:nzYlLBN30
sakura-2.3.0.0ソース:

view\ceditview_command_new.cpp(767)
CEditView::ReplaceData_CEditView3関数の引数bFastModeがtrueのときpcLayoutが初期化されないのでAPエラーになります。
assertがありますが、呼び元ではUndoブロック数(101個以上)でtrue/falseを切り替えてるのでだめではないでしょうか。

window\CEditWnd.cpp(1865)
m_posSaveAryのdeleteの前にbreakがあるのでdeleteされません。
この変数が何者か分からないのでNULLチェックもなしにdeleteするのが正しいのかどうかが分からないです。
0704名無しさん@お腹いっぱい。
垢版 |
2015/12/23(水) 21:19:59.92ID:TCuPlfEc0
euc-jp同士のファイルをdiff差分に掛けようとすると実行しようとしたタブが落ちて残ったタブで再起動みたいになるんだが俺環か?
0705名無しさん@お腹いっぱい。
垢版 |
2015/12/24(木) 20:30:12.96ID:+HXskxjd0
>>704
落ちるね
ほぼ同じファイルだと落ちないけど
全く別のファイルで試したら落ちた

sakura_core\view\CEditView_Paint.cpp
request.txt
0706名無しさん@お腹いっぱい。
垢版 |
2015/12/24(木) 20:33:12.12ID:+HXskxjd0
>>705
#途中で書き込んでしまった

sakura_core\view\CEditView_Paint.cpp
request.txt

a.txt
b.txt
としてeuc-jpに変更して保存し、b.txtのほうでdiff実行すると100%再現しました
0707名無しさん@お腹いっぱい。
垢版 |
2015/12/24(木) 20:48:42.70ID:+HXskxjd0
場所だけ書いておきます。

CEditView_ExecCmd.cpp
507行目 CEditView::ExecCmd関数内のmemcpyで落ちています。
len=-2
read_cnd=3435973836
j=540936717
なのでおかしなことになってますね
0708名無しさん@お腹いっぱい。
垢版 |
2015/12/24(木) 23:15:44.39ID:CDhLPoV00
--- codechecker.cpp
+++ codechecker.cpp
@@ -772,8 +772,8 @@
}
// 第2バイトが10bbcccc、第3バイトが10ddddee
if( (c1 & 0xc0) == 0x80 && (c2 & 0xc0) == 0x80 ){
- ncwidth = std::max(nLen,3); // 4バイトコードである
- echarset = CHARSET_UNI_SURROG; // サロゲートペアの文字(初期化)
+ ncwidth = nLen; // 4バイトコード片である
+ echarset = CHARSET_BINARY2; // サロゲートペアの文字(初期化)
0709名無しさん@お腹いっぱい。
垢版 |
2015/12/28(月) 03:11:55.06ID:+aMBiAMb0
どうせ見ているだろう?
2ちゃんと言えど公式だろ?

パッチを2ちゃんに投稿する
陰からプレッシャーかける
こういう奴らが俺は一番嫌いだ

何で真っ向から開発者と向き合おうとしないのか
0716712
垢版 |
2016/01/12(火) 01:42:33.52ID:2CRE7q2H0
>>713
仕様なんかじゃなくてバグだよ
バグだらけだからお勧めしないと言ってるんだけど、伝わらなかったようだね。
0717名無しさん@お腹いっぱい。
垢版 |
2016/01/12(火) 01:55:23.16ID:2CRE7q2H0
選択と重複している部分について置換する/しないのどちらに転ばせるか、なら仕様の範疇だが
「選択範囲内置換」を指定しているのにも関わらず完全な範囲外まで置換するのを、バグと断言しない人なんているか?

ていうか、なんでこんな当たり前のことを「仕様」かどうか尋ねるの?
バグとわかってて「仕様ですか」と尋ねるのは明らかに開発者に対する皮肉なわけで
失礼極まりない行為
0719名無しさん@お腹いっぱい。
垢版 |
2016/01/12(火) 20:28:57.65ID:g1AG3irA0
× なぜか修正されない
○ なぜか(わたしは)修正しない

コードがあるんだからうだうだ言ってないで自力で直せば?
出来ないならすっこんでろ
0723名無しさん@お腹いっぱい。
垢版 |
2016/01/22(金) 01:16:20.86ID:qT7MqSmC0
sakura2.2.0.1 (64bit)

TAB→空白 への変換ですが、ツールバーから「変換」-「TAB→空白」を選択すると変換できますが、
ショートカットキーで Ctrl+Alt+F5 を実行しても、変換されません。
一個前のバージョンでは、変換できていました。

同じキーに一度割り当てを解除し、改めて割り当てても動作しません。
別なキーに割り当てすれば動作します。

windows7(x64),windows10(x64) のどちらも同じ状態ですが、ほかの方も同じでしょうか?
0724名無しさん@お腹いっぱい。
垢版 |
2016/01/22(金) 13:29:16.22ID:ooOMahNi0
突如(フォントだけでなく)画面全体が大きくなるのは、私が何を押しちゃってるせいだろう
0725名無しさん@お腹いっぱい。
垢版 |
2016/01/22(金) 15:34:15.92ID:L5ubdBpI0
>>723
Intel Graphicじゃない?
デスクトップ右クリック→グラフィックス・オプション→
ホットキー→無効
でうちのは使えるようになった(Win8.1)
Ctrl+Alt+F5はオプションで設定されてないけど予約してるらしい
0727名無しさん@お腹いっぱい。
垢版 |
2016/01/22(金) 19:55:51.88ID:mnWHdag+0
>>725
723です。

ありがとうございますm(_ _)m
解決しました!
0728名無しさん@お腹いっぱい。
垢版 |
2016/01/23(土) 22:21:17.05ID:0r2G27pW0
フォルダを指定するんじゃなくて、対象ファイルのフルパスが書かれたテキストファイルを指定してのGREPって可能ですか?
ちょうどコマンドプロンプトのfindstrの/Fオプションのように。
マクロとかでもいいので、教えて下さい。
■ このスレッドは過去ログ倉庫に格納されています