Поиск по этому блогу

четверг, 1 февраля 2018 г.

пятница, 2 ноября 2012 г.

Создание списка литературы в Latex с помощью Bibtex

О чём статья?
Если количество использованной вами литературы при написании документа в LaTex больше 5, стандартными средствами пользоваться неудобно и долго. Для этой задачи есть Bibtex и прочие подобные программы, о настройке одной из них и пойдет речь в данной статье.

Введение
Bibtex(мы будем работать с клоном Pybtex) позволяет вам просто оперировать вашей литературой по небольшой базе данных, сохраненной в текстовом файле(как её создать будет написано далее).
Каждой книге вы дадите ключ или метку (Bibtexkey) по которой вы сможете ссылаться на нужный источник с помощью команды:

\cite{tanenbaum_book}

В конец документа(до \end{document}) latex необходимо поместить следующий тег:


\bibliography{путь к файлу библиографии}
например
\bibliography{atrticle_db}

В начало документа (после \begin{document}) latex необходимо поместить следующий тег:


\bibliographystyle{unsrt}
\renewcommand\refname{\centering СПИСОК ЛИТЕРАТУРЫ}

Это позволит выдавать список литературы вашего документа в порядке упоминания в тексте!

Как создать эту базу данных? Для этого существует множество графических программ, например Jabref. Для её работы нужно установить Java машину, а также

sudo apt-get install java-common jabref

Сохранить созданную базу данных рекомендую в кодировке utf8 и с расширением .bib.

Установка Pybtex
Программу можно найти здесь: pybtex.

sudo apt-get install python-setuptools
sudo apt-get purge pybtex

Разархивируйте и перейдите в директорию:

cd pybtex sudo python
 setup.py develop

Рекомендую заменить вызов bibtex  в вашем любимом текстовом редакторе на pybtex.

Как собирать документы?


pdflatex <Ваш *.tex>
pybtex <Ваш *.aux>
pdflatex <Ваш *.tex>
pdflatex <Ваш *.tex>

Примерчик

\documentclass[a4paper,12pt]{scrartcl} %Тип документа статья
\usepackage[unicode=true,colorlinks,urlcolor=blue, linkcolor=black, citecolor=black]{hyperref} %Настройки формата ссылок
\usepackage{textcomp} %спец символы
\usepackage[warn]{mathtext} % русские буквы в формулах, с предупреждением

\usepackage{cmap} % для кодировки шрифтов в pdf
\usepackage[T2A]{fontenc} % внутренняя кодировка  TeX
\usepackage[utf8]{inputenc} % входная кодировка файла utf8
\usepackage[english, russian]{babel} % локализация

\usepackage{indentfirst} % русский стиль: отступ первого абзаца раздела
\usepackage{totcount} %счётчик
% Задаем отступы: слева 30 мм, справа 10 мм, сверху до колонтитула 10 мм
% снизу 25 мм
\usepackage[top=10mm,bottom=30mm,left=25mm,right=15mm]{geometry}
\usepackage{fancyhdr}      % Для работы с колонтитулами

\usepackage{amsmath} %пакет для работы с математическими  формулами
\usepackage{amssymb}

%\usepackage[pdftex]{graphicx} % Работа с графикой \includegraphics{}
\usepackage[section]{placeins} % Пакет позволяет задавать границы для плавающих объектов
\usepackage{multirow}

\begin{document}
\bibliographystyle{unsrt}
\renewcommand\refname{\centering СПИСОК ЛИТЕРАТУРЫ}
 \begin{titlepage}
    \begin{center}
    \textbf{Министерство Образования Российской Федерации}\\[0.5cm]
    \large\textbf{Haциональный Исследовательский Ядерный Университет "МИФИ"}\\[3cm]
     Факультет Кибернетики и Информационной безопасности\\
     Кафедра "Управляющие интеллектуальные системы"\\[3cm]
    \Large Операционные системы реального времени для многопроцессорных архитектур: SMP и AMP. Особенности VxWorks SMP.\\[5cm]
      \begin{minipage}[center]{0,5\textwidth}
 
\begin{flushleft}
\large\emph{Автор:} Барбашов П.\ И.\\      
\emph{Группа:} К7-292\\
\emph{Преподаватель:} Древс Ю.\ Г.\\
       
\end{flushleft}
      \end{minipage}
      \vfill
    \largeМосква 2012\\
    \end{center}
  \end{titlepage}
  \tableofcontents
  \clearpage
  \section{Введение}
    \label{intro}
  \section{Основные сведения о многопроцессорных архитектурах: SMP и AMP}
    \label{main_arch}
\cite{stollings} \cite{intro}
    \subsection{SMP архитектура}
    \label{smp}
    \subsection{AMP архитектура}
    \label{amp}
  \section{ОС на многопроцессорных архитектурах}
    \label{os}
    \subsection{Конфигурации Ос на SMP и AMP}
    \label{config}
    \subsection{Выбор между SMP и AMP}
    \label{choice}
  \section{Особенности ОСРВ VxWorks SMP}
  \label{features}
  \section{Заключение}
  \label{conclusion}
  \clearpage
\bibliography{referat}
\end{document}

пятница, 19 октября 2012 г.

Важные параметры gcc


Важные параметры gcc
                          
             -E           
                          
                            
прерывание компиляции после обработки  
препроцессором (необходимо указать 
выходной файл, иначе в терминал все
выведет)                 
                          
             -S           
                          
                            
Прерывание по завершению  компиляции. Выходным файлом по умолчанию будет файл с кодом на ассемблере с расширением .s
                          
             -o           
                          
                            
Назначение имени выходному файлу.  
                                       
                                       
                                         
                          
             -с           
                          
                            
Прерывание по завершению ассемблирования.
                                       
                                       
                                         
                          
           -Wall          
                          
                            
 Выводить все предупреждения!     
                                       
                                       
                                         
                          
          -Werror         
                          
                            
 Все предупреждения сделать ошибками! 
                                       
                                       
                                         
                          
             -I           
                          
                            
Указать дополнительный путь к поиску 
заголовочных файлов. Просматривается в первую очередь.          
                                         
                          
             -g           
                          
                            
Помещает в объектный код инструкции для отладки с помощью gdb.        
                                       
                                         
                          
        -O1,-O2,-O3       
                          
                            
Уровень оптимизации компилятором.  
                                       
                                       
                                         
                          
            -O0           
                          
                            
Отмена оптимизации. Для отладки рекомендуется.            
                                       
                                         
                          
    -march=architecture   
                          
                            
Задает целевую архитектуру.     
                                       
                                       
                                         
                          
             -s           
                          
                            
Убрать из исполняемого файла таблицу символов для сокращения размера.  
                                       
                                         
                          
             -l           
                          
                            
Подключить к исполняемому файлу  библотеку, указать необходимо без  префикса lib            
                                         
                          
             -L           
                          
                            
 Указание пути с библиотеками Обратить
 внимание на порядок: gcc -o main main.o -L. -lhello            
                                         
                          
           -fPIC          
                          
                            
Компилирование Position Independent Code
                                       
                                       
                                         
                          
          -shared         
                          
                            
Указывает компилятору о сборке не исполняемого файла, а динамической  библиотеки!            
                                         
                          
-Wl,-option,value1,value2...
                          
                            
Перать линковщику опцию с параметрами.
                                       
                                       
                                         
                          
        -Wl,-rpath,.      
                          
                            
Назначение директории, необходимой  загрузчику динамических библиотек для их подгрузки. (необходимо указать при компиляции)               
                          
 -Wl,-soname,libhello.so.2
                          
                            
Назначить soname библиотеки.     
                                       
                                       
                                         

Универсальные групповые операции Unix shell

* - любое (в том числе нулевое!!!) количество любых символов;
? - ОДИН произвольный символ;
[xyz] - один символ из набора (x или y или z);
[x-y] - один символ из диапазона (от x до y включительно).

Не следует путать групповые символы с регулярными!
Также необходимо учесть, что групповой символ * не учитывает символы '/' и '.' в начале имени файла(невидимый файл). 

Интересная статья по этому поводу: linux-mag

четверг, 18 октября 2012 г.

Переменная окружения CDPATH

Введение
Пользователям Unix хорошо известна полезная переменная окружения PATH. Существует аналогичная по своему назначению переменная CDPATH. Она нужна для более удобного использования команды cd. По-умолчанию команда cd и автодополнение работают в непосредственно указанной директории. Например, если вы хотите набрать cd mydir/, то автодополнение будет работать только по файлам текущей директории. Переменная  CDPATH помогает добавить ещё ряд директорий, в которых будет производится поиск набираемой вами директории.
Как настроить:
В ~/.zshrc написать следующее:
zstyle ':completion:*:complete:(cd|pushd):*' tag-order 'local-directories named-directories'
#отображает, группу директорий в которых произошло автодополнение
zstyle ':completion:*' group-name ''
zstyle ':completion:*:descriptions' format %d
CDPATH=".:..:$HOME"
export CDPATH
Перезапустить zsh.
Пример работы:
Если, например, ваша текущая директория /home/us1/downloads/firefox/ и вам надо перейти в директорию  /home/us1/desktop/. То набрав cd de <TAB> произойдет автодополнение.