2016-08-13 3 views
7

У меня очень большой код в моем .rst файле, который я хотел бы выделить только небольшую часть и сделать ее полужирным. Рассмотрим следующий пример сначала:Выделите часть блока кода

wall of text. wall of text. wall of text.wall of text. wall of text. wall of text.wall of text. wall of text. wall of text. 
wall of text. wall of text. wall of text.wall of text. wall of text. wall of text.wall of text. wall of text. wall of text. 

**Example 1: Explain showing a table scan operation**:: 

    EXPLAIN FORMAT=JSON 
    SELECT * FROM Country WHERE continent='Asia' and population > 5000000; 
    { 
    "query_block": { 
     "select_id": 1, 
     "cost_info": { 
     "query_cost": "53.80"   # This query costs 53.80 cost units 
     }, 
     "table": { 
     "table_name": "Country", 
     "access_type": "ALL",   # ALL is a table scan 
     "rows_examined_per_scan": 239, # Accessing all 239 rows in the table 
     "rows_produced_per_join": 11, 
     "filtered": "4.76", 
     "cost_info": { 
     "read_cost": "51.52", 
     "eval_cost": "2.28", 
     "prefix_cost": "53.80", 
     "data_read_per_join": "2K" 
     }, 
     "used_columns": [ 
     "Code", 
     "Name", 
     "Continent", 
     "Region", 
     "SurfaceArea", 
     "IndepYear", 
     "Population", 
     "LifeExpectancy", 
     "GNP", 
     "GNPOld", 
     "LocalName", 
     "GovernmentForm", 
     "HeadOfState", 
     "Capital", 
     "Code2" 
     ], 
     "attached_condition": "((`world`.`Country`.`Continent` = 'Asia') and (`world`.`Country`.`Population` > 5000000))" 
     } 
    } 
    } 

Когда он преобразуется в HTML, это синтаксических основные моменты по умолчанию (хорошо), но я также хочу, чтобы указать несколько строк, которые должны быть смелым (те, с комментариями на них, но, возможно, другие тоже.)

Я думал о добавлении чередующейся последовательности символов в строке (.eg #@@), а затем записи сценария после парсера для изменения генерируемых html-файлов. Есть ли способ лучше?

+0

Вы просмотрели http://coderay.rubychan.de/, он написан для рубина, но это тот тип вещи, который вы хотите? (Возможность ввода исходного кода и вывода его с форматированием html?) –

+0

Мне очень нравится сфинкс. У меня был только один вопрос: –

ответ

2

Директива code-block имеет опцию emphasize-lines. Ниже приведены строки с комментариями в вашем коде.

**Example 1: Explain showing a table scan operation** 

.. code-block:: python 
    :emphasize-lines: 7, 11, 12 

    EXPLAIN FORMAT=JSON 
    SELECT * FROM Country WHERE continent='Asia' and population > 5000000; 
    { 
    "query_block": { 
     "select_id": 1, 
     "cost_info": { 
     "query_cost": "53.80"   # This query costs 53.80 cost units 
     }, 
     "table": { 
     "table_name": "Country", 
     "access_type": "ALL",   # ALL is a table scan 
     "rows_examined_per_scan": 239, # Accessing all 239 rows in the table 
     "rows_produced_per_join": 11, 
     "filtered": "4.76", 
     "cost_info": { 
     "read_cost": "51.52", 
     "eval_cost": "2.28", 
     "prefix_cost": "53.80", 
     "data_read_per_join": "2K" 
     }, 
     "used_columns": [ 
     "Code", 
     "Name", 
     "Continent", 
     "Region", 
     "SurfaceArea", 
     "IndepYear", 
     "Population", 
     "LifeExpectancy", 
     "GNP", 
     "GNPOld", 
     "LocalName", 
     "GovernmentForm", 
     "HeadOfState", 
     "Capital", 
     "Code2" 
     ], 
     "attached_condition": "((`world`.`Country`.`Continent` = 'Asia') and (`world`.`Country`.`Population` > 5000000))" 
     } 
    } 
    } 
+0

Работает отлично. Спасибо! –

Смежные вопросы