Top Tweets for #MYHL
„If you’re a goaltender, tend the goal“, right @Steve_Dangle ? @sdpnsports
#EHCFrauenfeld scores a weird goal against @EHCWetzikon in a #MyHL game @SwissIceHockey
マルチラインの履歴を上矢印キーで呼び出せるようにしたことで、この問題が頻発するようになり、対応の優先度が上がりました。そこで、履歴の { と } の数が等しいときは、オートインデントの前にnLbracesのカウントを一時的に増やし、後で戻すことで対応しました。#MyHL
一行ずつしかたどれなかったマルチラインの履歴を、まとめて表示して、そのまま実行できるようにヒストリ機能を改造しました。とりあえず、上矢印キーだけ実装しています。#MyHL
REPLの履歴から複数行のコードを実行するときは、historyコマンドで確認したidを使って!p..qコマンドを実行する。これで一応、関数定義などのブロックも実行できる。ヒストリ機能は、マルチラインモードを実装する前に書いたものがベースになっているので、こういう仕様になっている。#MyHL
いまは最新の変更しかUndoできないけど、マルチラインモードで行編集をするたびに、その操作を元に戻すコマンドを配列に追加していけば、うまく動きそう。#MyHL
オートインデントの処理を書き直しました。見た目はあまり変わりませんが、ブレースの数に応じてインデントを調整する、シンプルな実装に変えました。ブレースを見つけたらいったんキューに入れておき、インデントを調整するタイミングでまとめてカウントしています。#MyHL
readLine()の処理を、EditorStateで分岐するようにしました。#MyHL
for (;;) { // 2行目以降
if (editor.state == EditorState_Initial) {
}
else if (editor.state == EditorState_InputHandling) {
}
...
else if (editor.state == EditorState_CommandExecution) {
}
}
流れで、これにもタグをつけておく。#MyHL
もう2年も前なので、hariboteのreadLine()について、なんでこんな実装にしたんだっけ、と思い出していた。最初は、HLの公式処理系の構造を壊さずにシンプルにhariboteを書きたい気持ちがあって、そこで #define readLine fgets することを思いついて、おっ、わかりやすいかも、って思ったんだっけ。
needleのreadLine()はマルチラインモード用のバッファを持ち、各行を切り出して編集する。単一行を編集する際は、内部で_readLine()を呼び出す。この関数は、ほぼhariboteのreadLine()と同じで、複数行に影響する処理をおこなう必要が生じた場合は、ラッパー側に制御を戻す。#MyHL
needleのreadLine()を改造して、Forward Delete(27 91 51 126)で次の行を削除できるようにしました。思ったよりたいへんだったけど、すごくたのしかった。ある程度バグを取ったら、今回のREPLの改造はおしまいです。#MyHL
REPLのマルチラインモードで、1バイト文字とマルチバイト文字が混在するテキスト上で、上下のカーソル移動ができるようにしました。1バイト文字から移動した先のマルチバイト文字の右半分にカーソルが合ってしまう現象が発生したので、その都度調整する処理を加えています。#MyHL
Loan: Andrea Zanolari (D) | EHC Arosa -> EHC Wetzikon | https://t.co/hntkxA8Rmy #MyHL
Most Popular Users

Elon Musk 
@elonmusk
241.5M followers

Barack Obama 
@barackobama
118.8M followers

Cristiano Ronaldo 
@cristiano
114.5M followers

Donald J. Trump 
@realdonaldtrump
111.8M followers

Narendra Modi 
@narendramodi
107.1M followers

Rihanna 
@rihanna
98.7M followers

NASA 
@nasa
92.3M followers

Justin Bieber 
@justinbieber
91.8M followers

KATY PERRY 
@katyperry
90M followers

Taylor Swift 
@taylorswift13
84M followers

Lady Gaga 
@ladygaga
75.5M followers

Virat Kohli 
@imvkohli
73.5M followers

Kim Kardashian 
@kimkardashian
70.9M followers

YouTube 
@youtube
68.8M followers

Neymar Jr 
@neymarjr
66.5M followers

Bill Gates 
@billgates
65.3M followers

Selena Gomez 
@selenagomez
63.1M followers

The Ellen Show
@theellenshow
62.2M followers

CNN 
@cnn
61.7M followers

X 
@x
60.7M followers




