scieditor2 09 version 8

2019/09/19 17:20 by yamasyuh68
  :追加された部分   :削除された部分
(差分が大きい場合、文字単位では表示しません)
scieditor2  09
190918
# 手直しもろもろ
## シンチラからの行取得
- ①QScintilla と ②QScintillaBase の api 速度比較
シンチラから特定の行の文字列をもらう関数について、①は使い方がよくわからなかったので従来は②でやってた
①は基本②のラッパだから速度は遅いはずだし
しかし②を非効率なコードで呼んでいれば①の方が速い可能性もある
- 2M以上の比較的大きめのファイルで実験した結果だが
①0.25秒②0.45秒
①の方が早い!!(゚Д゚)(゚Д゚)(゚Д゚)(゚Д゚)
俺のコードが非効率だったんだな・・・
- ②はc++ベースでわかりやすいけどpythonからは使いづらい
文字列を取得する際もまず行の長さを取得してその分のバッファを確保してからもらいに行く
バッファ確保のために ctypes を使っていた
①だと一つの関数で取得した文字列のポインタが簡単に帰ってきて、凄く簡単でpythonライク
**こんな簡単な①の方がしかも速いとは・・**
②で書いた私のコードがダメダメだったんだなあ・・・・
きちんと動いてはいたんだけど
がっかりでしたが、まあ、改善されたって事で

## tabChanged
- try でエラー回避して落ちないようにしている部分のエラーメッセを全て表示しようと思い箇所をチェックしていて見つけた
- タブを閉じて無くなったときの動作をtryでエラー回避してたが、タブカウントがゼロなら何もせずに戻るように書き換えた
- try を覚えて何でもここに逃げてた時期があった。解決は簡単だったのに。コードを後で見直すとこういう発見が随所にあるのかもしれないなあ

## 	QtreeWidget に model セットする実験
## 	QtreeWidget に model セットする実験
- **できませんでした ┐('д')┌**
- アウトラインのビューはいろいろ使い勝手が良いのでモデルを差し替えて使いたかった、View のように
もともとWidgetはviewの派生だから可能だと思ったが、modelは持ってるもののWidgetに固有のようで、差し替えはできないようです。
残念、やはりwidgetをviewに変更しなくてはいけませんな

----
---> [scieditor2](https://mimemo.io/m/zeXgworpjz4K0Ek)      

190918

手直しもろもろ

シンチラからの行取得

  • ①QScintilla と ②QScintillaBase の api 速度比較
    シンチラから特定の行の文字列をもらう関数について、①は使い方がよくわからなかったので従来は②でやってた
    ①は基本②のラッパだから速度は遅いはずだし
    しかし②を非効率なコードで呼んでいれば①の方が速い可能性もある
  • 2M以上の比較的大きめのファイルで実験した結果だが
    ①0.25秒②0.45秒
    ①の方が早い!!(゚Д゚)(゚Д゚)(゚Д゚)(゚Д゚)
    俺のコードが非効率だったんだな・・・
  • ②はc++ベースでわかりやすいけどpythonからは使いづらい
    文字列を取得する際もまず行の長さを取得してその分のバッファを確保してからもらいに行く
    バッファ確保のために ctypes を使っていた
    ①だと一つの関数で取得した文字列のポインタが簡単に帰ってきて、凄く簡単でpythonライク
    こんな簡単な①の方がしかも速いとは・・
    ②で書いた私のコードがダメダメだったんだなあ・・・・
    きちんと動いてはいたんだけど
    がっかりでしたが、まあ、改善されたって事で

tabChanged

  • try でエラー回避して落ちないようにしている部分のエラーメッセを全て表示しようと思い箇所をチェックしていて見つけた
  • タブを閉じて無くなったときの動作をtryでエラー回避してたが、タブカウントがゼロなら何もせずに戻るように書き換えた
  • try を覚えて何でもここに逃げてた時期があった。解決は簡単だったのに。コードを後で見直すとこういう発見が随所にあるのかもしれないなあ

QtreeWidget に model をセットする実験

  • できませんでした ┐('д')┌
  • アウトラインのビューはいろいろ使い勝手が良いのでモデルを差し替えて使いたかった、View のように
    もともとWidgetはviewの派生だから可能だと思ったが、modelは持ってるもののWidgetに固有のようで、差し替えはできないようです。
    残念、やはりwidgetをviewに変更しなくてはいけませんな

---> scieditor2