Как изменить размер вкладки на GitHub?

Когда я просматриваю файлы на GitHub, вкладки отображаются как 8 пробелов.

Пример:

пример

Можно ли изменить эту конфигурацию на 2 или 4 пробела?


person Misha Moroshko    schedule 12.01.2012    source источник
comment
Вы также можете проверить ответы, представленные в проблеме GitHub # 170 pre { tab-size: 4 }   -  person KyleMit    schedule 04.11.2014
comment
Я думаю, вам следует изменить принятый ответ на ответ @rofrol об использовании .editorconfig, я думаю, что его ответ включает текущие лучшие методы для обеих настроек конфигурации таким образом, чтобы другие люди увидели код, как вы хотели, и изменение внешнего вида чужого кода, когда вы его читаете.   -  person f1lt3r    schedule 21.06.2017
comment
@ f1lt3r Я не согласен. Если люди действительно хотят просматривать мой код с 8 пробелами, им больше возможностей. Я не хочу ограничивать их таким образом, чтобы я мог просматривать его с 4 пробелами на github для себя. Если ответ изменится, это должен быть ответ Мортенпи.   -  person Assimilater    schedule 20.03.2018
comment
@Assimilater - ответ rofrol никому не запретит просматривать любую ширину, которую они хотят. Согласитесь, что ответ mortenpi хорош, хотя и довольно неприятен, что приходится добавлять параметр для каждого файла, который вы просматриваете.   -  person f1lt3r    schedule 21.03.2018
comment
Может ли кто-нибудь объяснить логику использования 8 пробелов по умолчанию? Я не могу представить себе ни одного сценария, в котором 8 пробелов выглядели бы иначе, чем нелепо - но это по умолчанию на github? Что дает?   -  person PandaWood    schedule 26.06.2018
comment
Много месяцев назад в Unix по умолчанию использовалось восемь пробелов. Вероятно, на GitHub есть тонна старых C, которые это предполагают.   -  person Denis Howe    schedule 16.08.2019
comment
Размер отступа может отличаться от размера табуляции. Большинство редакторов могут по-прежнему предлагать размер отступа 4 с размером табуляции 8. См. Этот пост: terminatorul.wixsite.com/blog/post/tabs-and-tab-size   -  person Toughy    schedule 12.06.2021


Ответы (9)


Обновлять

Да. Как заявил mortenpi, это можно сделать с помощью дополнительного параметра запроса. Дополнительные сведения см. В его ответе.

Оригинальный ответ

Можно ли изменить эту конфигурацию на 2 или 4 пробела?

Нет. Это доступно только как часть функции редактирования с помощью редактора Ace, и изменение не сохраняется.

В этом сообщении в блоге содержится дополнительная информация о встроенной среде IDE.

Однако, если вам известен URL-адрес большого двоичного объекта (файла), который вы хотите просмотреть, вы можете легко переключиться в режим редактирования, изменив сегмент большого двоичного объекта с помощью редактирования. сегмент и используйте раскрывающийся список, чтобы выбрать желаемый размер вкладки.

tabSize

person nulltoken    schedule 12.01.2012
comment
Отличная идея, но проблема в том, что как только вы входите в режим РЕДАКТИРОВАНИЯ, вы также РАЗВИВАЕТЕ указанный архив. Может стать немного чрезмерным после 50 или около того правок, предназначенных только для просмотра;) - person tomByrer; 01.06.2012
comment
Согласовано. Но это может быть хорошим стимулом начать вносить свой вклад;) - person nulltoken; 01.06.2012
comment
Как упоминал @chrisdembia, это больше не правильно; github позволяет изменять размер вкладки, передавая значение в качестве параметра запроса (например, ?ts=4) - person dule; 03.02.2015
comment
Есть ли у сообщества способ отменить выбранный ответ? - person chrisdembia; 04.02.2015
comment
@chrisdembia Спасибо за напоминания;) Обновлен ответ, чтобы указать на ответ Моренти. - person nulltoken; 04.02.2015

Вы можете добавить ?ts=2 или ?ts=4 к URL-адресу, чтобы изменить размер табуляции.

Пример: https://github.com/jquery/jquery/blob/master/src/core.js?ts=2

Кажется, что значение может быть любым от 1 до 12. Однако это не работает с Gists или необработанными представлениями файлов.

Источник: Памятка по GitHub

person mortenpi    schedule 07.05.2014
comment
Хорошо, что это возможно, но было бы неплохо, если бы был простой способ выбрать ширину табуляции, а не запоминать параметр URL. - person aross; 19.05.2014
comment
Также было бы неплохо, если бы github позволял вам сохранить это как предпочтение, чтобы вам не нужно было снова помещать его в URL-адрес. - person FrustratedWithFormsDesigner; 21.07.2016
comment
Кажется, это больше не работает. При просмотре приведенного выше примера (github.com/jquery /jquery/blob/master/src/core.js?ts=2) размер вкладки отображается как 8, а не 2. - person Phil Dennis; 05.04.2017
comment
@PhilDennis У меня работает с Chrome (в Linux). - person mortenpi; 06.04.2017
comment
@ NikolaMihajlović Что вы имеете в виду под коммитами? Похоже, он работает в режиме фиксации (github.com/jquery/jquery/ commit /) в Chrome / Linux. - person mortenpi; 27.04.2018
comment
@mortenpi Супер странно, кажется, что он избирательный в отношении расширений, например. не работает для json: rel ==2b9f38cd45289c?ts=2b9f38cd45289c?ts=2b9f38cd45289c " / commit / - person Nikola Mihajlović; 29.04.2018
comment
@ NikolaMihajlović Это немного тонко, но аргумент ts должен быть перед фрагментом # в URL-адресе. Например. - person mortenpi; 06.05.2018
comment
хорошее решение. к сожалению, не работает с различиями в PR. - person bbjay; 08.04.2019
comment
в firefox вы можете использовать аддон trumpio request control для создания правил. Я применяю параметр запроса ts к каждому запросу к * .github.com. - person sijanec; 12.06.2020
comment
@bbjay теперь работает для различий в запросах на вытягивание. - person T3rm1; 09.07.2020
comment
@ T3rm1, нормальное представление фиксации или представление измененных файлов в PR, похоже, пока не обрабатывает ?ts=4. Какая уловка? - person kxr; 26.02.2021

Установите размер отображаемой вкладки по умолчанию для вашего репозитория

Если у вас есть .editorconfig в вашем репозитории, он будет уважать его при просмотре кода на GitHub.

indent_style = tab и indent_size = 4 показывает вкладки с 4 столбцами вместо 8 https://github.com/isaacs/github/issues/170#issuecomment-150489692

Пример .editorconfig для нескольких расширений, которые работают в продуктах JetBrains :

root = true

[*]
end_of_line = lf
insert_final_newline = true

# Matches multiple files with brace expansion notation
[*.{js,jsx,html,sass}]
charset = utf-8
indent_style = tab
indent_size = 4
trim_trailing_whitespace = true

[*.md]
trim_trailing_whitespace = false

Измените вид вкладок в других репозиториях

Установите Stylus в свой браузер, а затем установите GitHub: вкладки большего размера в коде.

Также существуют расширения Google Chrome:

person rofrol    schedule 20.11.2015
comment
Похоже, что github не уважает файл editorconfig для файлов без имен (.gitconfig и т. Д.). Есть идеи, почему это ошибка? Пример: github.com/rmandvikar/git-setup/blob/tabs/.gitconfig - person hIpPy; 19.04.2017
comment
dotfiles, похоже, не соблюдаются с [*] (на github). Пришлось добавить еще одну запись с [.*]. - person PotatoFarmer; 25.09.2017
comment
Это, безусловно, должен быть принятый ответ! Я поражен тем, что Github действительно следует правилам конфигурации редактора. - person Maurício Giordano; 25.10.2017
comment
Это не соблюдается в коммитах :-( - person Nikola Mihajlović; 26.04.2018
comment
Тем не менее, он также фиксирует размер вкладки в вашем редакторе, что сводит на нет всю цель вкладок. - person Caleb Hearon; 12.09.2018
comment
Эта функция была удалена из github? Некоторые из моих ранее правильных репо, похоже, сброшены до 8 пробелов. - person Redsandro; 14.10.2019
comment
@Redsandro Можете ли вы сделать тестовое репо? - person rofrol; 14.10.2019
comment
@rofrol Думаю, я ошибся. Размер табуляции правильно работает в коде и различиях, но не в README.md фрагментах кода. Это новое наблюдение; Я не знаю, README.md фрагменты кода когда-либо имели размер табуляции, отличный от 8 пробелов. - person Redsandro; 14.10.2019
comment
Используйте Стилус, а не стильный. У Stylish было шпионское ПО, и оно может снова появиться в будущем. - person Perhaps you see this name.; 06.05.2020
comment
@Perhapsyouseethisname. Обновлено. Спасибо - person rofrol; 06.05.2020

На самом деле это возможно с помощью расширения для браузера. Установите StylishFirefox или Chrome), затем установите этот пользовательский стиль: «GitHub: вкладки большего размера в коде ».

Это может не работать для некоторых языков. Например, я просматривал файл JavaScript и не заметил никаких изменений. Поэтому я удалил стиль, который был у автора, и вставил в него следующие строки:

.tab-size {
  -webkit-tab-size: 4 !important;
     -moz-tab-size: 4 !important;
       -o-tab-size: 4 !important;
          tab-size: 4 !important;
}

И это сработало в Chrome (снимок экрана).

Как видно на скриншоте, я также включил широкоэкранный режим и изменил цветовую схему на Solarized. Итак, у меня есть три пользовательских стиля, работающих на страницах GitHub через стильное расширение для Chrome. Я надеюсь, что это помогает кому-то.

person aledujke    schedule 28.03.2013
comment
Я написал этот стиль пользователя. Я рада, что вы сочли это полезным. Я исправил это и протестировал в Chrome, и теперь он работает без ваших изменений. - person Rory O'Kane; 22.06.2013
comment
Вам также может понравиться мой пользовательский стиль «Весь код имеет размер табуляции 4 », который изменяет размер вкладки <code> элементов на всех веб-сайтах. - person Rory O'Kane; 22.06.2013
comment
Привет, Рори! Спасибо за такой стиль. Я проверю и другой. Только мне нравится размер вкладки 2, так что я думаю, что немного подумаю: P - person aledujke; 25.06.2013
comment
Отличный инструмент. Хотя мне обычно нравится размер табуляции в 2 пробела, я заметил, что установка его на два пробела скрывает некоторые аномалии пробелов (строки с неправильным отступом), поэтому я пошел на компромисс и установил стильный на 4. - person Iain; 25.07.2013
comment
Github заменяет каждый \t на 8 &nbsp;. Мерде. - person Rudie; 18.12.2013
comment
Да, они не делали этого раньше, и я понятия не имею, почему они это делают сейчас :( Думаю, решением может быть кто-то, кто напишет сценарий, который заменяет say ... 4 подряд двумя или чем-то еще. Но это должен быть пользовательский скрипт. считать. - person aledujke; 19.12.2013
comment
Может быть, расширение браузера, которое будет использовать решение @ mortenpi для добавления аргумента официального поддерживаемого URL-адреса в URL-адреса GitHub, поможет? - person Bart Verkoeijen; 16.05.2014
comment
@aledujke: Примерно так: github.com/NV/tab_character_size Не тестировался как сайт ( userscripts.org) в настоящее время не работает. - person aross; 19.05.2014
comment
Наш GitHub Dark стильный стиль пользователя позволяет вам установить размер вкладки. И это активно поддерживается. - person Mottie; 28.06.2014
comment
Этот плагин определенно работает, но вам нужно настроить селекторы. Пользователь любезно предоставил версию в сообщении для обсуждения, которая подходит мне во время пишу. - person Tom K; 15.03.2016
comment
@ RoryO'Kane Расширение не работает с дифф. Кто-то уже предложил исправление некоторое время назад. Вы могли бы это применить? - person Ten; 27.01.2020
comment
@Ten Я только что обновил расширение, теперь оно работает и в диффах. Спасибо, что сообщили мне об ошибке. - person Rory O'Kane; 18.02.2020

Если проект ваш, создайте файл в корне проекта с именем «.editorconfig» и дайте ему следующее содержимое.

[*]
indent_style = tab
indent_size = 4

Это приведет к тому, что GitHub отобразит вкладки шириной 4 в проекте.

Это файл EditorConfig, который формально указан, поддерживается многими редакторами, а также поддерживает более обширную конфигурацию редактора, например указание что все файлы .html имеют кодировку UTF-8.

Если проект не ваш, рассмотрите возможность открытия вопроса с просьбой к автору указать желаемый стиль отступа.

person twhb    schedule 13.03.2021

Если вам нравятся UserScripts, это сделало это за меня:

// ==UserScript==
// @name         GitHub Tabs
// @namespace    http://foldoc.org/
// @version      1
// @description  Set sensible tabs on GitHub
// @author       Denis Howe
// @match        https://github.com/*
// ==/UserScript==

document.querySelectorAll('table').forEach(t => { t.dataset.tabSize = 2 });
person Denis Howe    schedule 16.08.2019
comment
Я бы предпочел эту альтернативу, но, похоже, она работает более или менее случайным образом: если данные не были загружены до запуска пользовательского скрипта (например, список файлов, затем щелкните, чтобы открыть файл), это не сработает. - person Ten; 27.01.2020
comment
Хорошая работа, однако, не работает для блоков кода в поле для комментариев. - person 沙漠之子; 02.07.2020

Я сделал это для их исправления http://valjok.blogspot.com/2014/07/indentation-correction-for-exposing.html.

Другой вариант - встраивать вашу суть, заменить все табуляции на необходимое количество пробелов

<div id="willReplaceTabs">
 <script src="https://gist.github.com/valtih1978/99d8b320e59fcde634ad/cf1b512b79ca4182f619ed939755826c7f403c6f.js"></script>

 <script language="javascript">
  var spaces = "  "
  willReplaceTabs.innerHTML = willReplaceTabs.innerHTML.replace(/\t/g, spaces)
 </script>
</div>
person Val    schedule 06.07.2014

Если это вариант для проекта, над которым вы работаете, изменение редактора для обработки вкладок как пробелов решит проблему.

Так, например, в Visual Studio Code конфигурация выглядит так:

{
    "editor.tabSize": 2,
    "editor.insertSpaces": true
}

В Sublime это:

{
    "tab_size": 2,
    "translate_tabs_to_spaces": true
}

До недавнего времени я настаивал на использовании вкладок без интервала. После переключения он устранил странность рендеринга Github, и я не заметил каких-либо существенных недостатков в моем рабочем процессе.

person Bryce Johnson    schedule 01.03.2016

Лучшее решение, если возможно, - убедить разработчиков исходного кода, который вы смотрите, заменить все вкладки на правильное количество пробелов.

Использование вкладок в коде сегодня проблематично, учитывая, что вы часто видите их в Интернете, где решение о том, «сколько пробелов на вкладке» зависит от того, где они отображаются.

person Tom Swirly    schedule 10.06.2013
comment
В GitHub есть пробельная строка запроса var, которую можно передать как ?w=1. Было бы неплохо, если бы у них было `? T = 4 'для 4 пробелов или если бы вы могли как-то настроить свой проект, и он просто взял бы его через Editor Config или что-то еще. - person jedmao; 01.07.2013
comment
Это правильный ответ, и он не заслуживает голоса против. Существует слишком много программного обеспечения, которое не позволяет вам изменять ширину вкладок, поскольку вкладки можно настроить так, чтобы они были чем-то другим, кроме принятия желаемого за действительное. И если вы когда-нибудь сделаете отступ на расстоянии, которое не кратно вашей предпочтительной ширине табуляции, теперь у вас есть смесь табуляции и пробелов, а регулировка размера табуляции больше не работает. - person zwol; 26.06.2014
comment
Прочтите статью в Википедии о том, откуда взялась вкладка с 8 пробелами. «Обычный горизонтальный размер табуляции из восьми символов эволюционировал, несмотря на то, что пять символов составляли полдюйма и типичный для того времени отступ абзаца, потому что как степень двойки было легче вычислить в двоичном формате для ограниченной доступной цифровой электроники». В вашем ответе используется круговая аргументация (т. Е. Стандарт составляет восемь символов, потому что это стандарт), чтобы закрыть дверь для вопроса. Спрашивающий не удовлетворен этим стандартом, и у него нет особых причин для этого. - person Adam; 02.07.2014
comment
@mrjedmao Да, вы можете сделать ?ts=4. - person Ben; 13.08.2014
comment
@ Бен, спасибо. Я, наверное, понял это сразу после того, как поставил этот комментарий, потому что я знал о ?ts=4 уже некоторое время, и sindresorhus создал для этого плагин Chrome, так что бонус! - person jedmao; 14.08.2014
comment
Я предпочитаю табуляцию по пробелу, потому что она ускоряет мое редактирование от 4 до 8 раз, когда я перемещаю курсор через пробел. - person ; 30.04.2015
comment
Следует отметить, что независимо от настроек пробелов бывают случаи, когда вы вынуждены использовать вкладки, такие как Makefiles. Имеет дело с тем, как наши Make-файлы выглядят ужасно на GitHub по умолчанию, так как мы используем вкладки шириной 4 места. - person mhoglan; 09.06.2015
comment
никто не может указывать другим разработчикам, как им следует форматировать свой код. Никто. Кроме человека, который платит разработчику, хм? это ускоряет мое редактирование от 4 до 8 раз, когда я перемещаю курсор через пробел. Зачем вы поступаете так с собой, когда у всех редакторов есть функция перемещения по слову / полю / строке? - person Tom Swirly; 10.06.2015
comment
Кроме человека, который платит разработчику, хм? Использовала ли IDE вашего мозга функцию перехода за строкой, чтобы пропустить следующее предложение? Я прямо заявил, что принудительные соглашения проекта имеют приоритет над индивидуальными предпочтениями. || Зачем вы поступаете так с собой, когда у всех редакторов есть функция перемещения по слову / полю / строке? Да, вы подразумеваете, что легче использовать функцию редактора для навигации по коду, чем просто нажать одну клавишу для просмотра всего столбца. Кроме того, не все редакторы имеют указанные функции, а некоторые даже работают по-разному. Перестаньте думать, что весь мир использует Sublime. - person ; 23.06.2015
comment
Сэр, у вас есть правильный ответ. Похоже, тебя здесь очень сильно ненавидели! - person Steven Shaw; 10.08.2017
comment
Если я хочу быстро просмотреть файл в браузере, который был предназначен для просмотра с определенной шириной вкладок (для целей выравнивания), я не собираюсь ждать месяцами или потенциально годами, чтобы кто-то его изменил. - person byxor; 26.10.2017
comment
Пробелы или табуляции - это совсем другой аргумент, который вы успешно троллили. Но ваш ответ никак не отвечает на вопрос. - person Rupert; 19.02.2019
comment
Это «решение» звучит как коммунизм. «Просто сделай то же самое, потому что твое мнение не имеет значения». - person Franklin Yu; 23.11.2019