リクエスト広場

#flex_box の非表示方法

4 コメント
views
4 フォロー

ページ1

#flex_container(flex-start){{{
#flex_box{{
表示しない
}}
#flex_box{{
表示する
}}
}}}

上記ページを他ページでincludeする際に「#flex_box{{表示しない}}」の部分を完全に非表示にしたいのですが、方法はありますでしょうか? なければその方法を追加して欲しいです。
以下方法でいくつか試しましたが、全てダメでした。

  1. #flex_box{{
    表示しない&null(非表示);
    }}
  2. #flex_box(0,非表示){{
    表示しない&null(非表示);
    }}&null(非表示);
  3. #flex_box(0,非表示){{
    #null(仮表示){{
    表示しない
    }}

上記それぞれを、#includex(ページ1,except=非表示); でやった場合

  1. 空の <div> </div> が生成されてしまい不自然な隙間がページに残る
  2. 上記ページ更新時に「}}&null(非表示);」→「}}」に勝手に変更されてしまい、#includex で意図した結果にならない
  3. 上記ページ更新時に「#null(仮表示){{」に対応する「}}」が勝手に追加されてしまい、#includex で意図した結果にならない
ユーザー1
作成: 2022/11/13 (日) 02:18:16
通報 ...
1
01v 2022/11/13 (日) 23:15:52

ユニーク文字列とカッコ数を制御してexceptする方法

  • 消したいマルチラインプラグイン開きカッコ行の(オプション)に適当な文字列を入れる
    無意味なオプションを解釈されないことを利用する
  • 消したい文章行は不可視なインラインプラグインを同様に差し込む
    &null(適当な文字列);など
  • 消したいマルチラインプラグインの閉じカッコ}の数を制御する
    意味のない#null{{}}を入れ子に組み込む
  • includexのexceptで適当な文字列と消したい閉じカッコ数を指定する
    あるいは逆に表示したいところだけ上記のように制御してfilterで抽出する

今回の例であれば以下のようにする
ページ1

#flex_container(flex-start){{{{
#flex_box(,非表示){{{
表示しない&null(非表示);
#null{{
}}
}}} //入れ子を増やすためにダミーの#nullを入れて}}}にする
#flex_box{{
表示する
}}
}}}}

ページ2

#includex(ページ1,except=非表示|^}}}$)
2
01v 2022/11/13 (日) 23:19:03 修正

別ページで見出しで制御する方法
ページ1

*A
表示しない
*B
表示する

ページ2

#flex_container(flex-start){{{
#flex_box{{
#includex(ページ1,section=(filter=A))
}}
#flex_box{{
#includex(ページ1,section=(filter=B))
}}
}}}

ページ3

#flex_container(flex-start){{{
#flex_box{{
#includex(ページ1,section=(filter=B))
}}
}}}
3
01v 2022/11/14 (月) 00:57:10

行末コメントを可能にする(今はできない)
上記の方法は色々面倒だったり、カッコの数で制御するのは分かりにくいのと書いた当人以外には何を意図してるのか理解できないでしょう。誰かがマルチライン記述を増減させてカッコの数が自動で変わったら破綻します。
新しい機能として行末に非表示コメントを入れられるようになれば、もっと直接特定の行を指定できるのでよいです。過去に何回か要望してますが。

  • マルチライン

    #マルチライン{{//コメント
    文章
    }}//コメント
    

    特定のマルチラインプラグインをincludexで外したいケースに使える。(今回のケース)
    また1ページに閉じカッコが沢山あるとどの開きカッコに対応してるかわかりにくいので、開きカッコと閉じカッコにペアでコメントをつけられると良いです。

  • |1|2|
    |3|4|//コメント
    |5|6|
    

    表の外側にコメントを入れられると行を分類したり検索したりincludexするのが楽です。表の中に不可視のプラグインでコメントを埋め込むこともできますが、スプレッドシートでの管理の観点からデータ列に余計な情報をいれてゴチャゴチャさせたくないです。

  • ブロック型

    #プラグイン()//コメント
    

    includeで特定の行を指定したときはこの書き方ができると良いです。(オプションに落書きできないこともあるので)
    通常のコメントであれば次の行に説明書きでもいいのですが。

  • 文章

    表示しない//コメント
    

    これをやると既存記述で//が入ってる文章に影響がありそうなので上手くないかもしれません。URLとか。
    &null(コメント);で運用するのがいいかも。

4
ユーザー1 2022/11/14 (月) 15:28:17 f074d@be4e6

返信ありがとうございます。
1番目の「ユニーク文字列とカッコ数を制御してexceptする方法」で試してみます。

現状のwikiwikiで使えない「行末コメント」のマルチラインは自分も試したんですが、最初にも書いてある通り書いても消されちゃうんですよね…残念です
表もそうですね、&null埋め込んで制御しようとこともありましたが、仰る通りごちゃごちゃし過ぎて…
ベースになってるpukiwikiがそういうのを許してないのかな

要望は具体的な提案や理由を書いて下さい。
×