Text Formattingnew command for an environment

Information and discussion about LaTeX's general text formatting features (e.g. bold, italic, enumerations, ...)
Post Reply
ghostanime2001
Posts: 402
Joined: Fri May 20, 2011 9:41 am

new command for an environment

Post by ghostanime2001 »

how do you make a new command for an environment so that one doesn't have to go through the hassel of constantly typing out \begin{blah blah} .. \end{blah blah}. I tried for example putting \newcommand{\ar}[1]{$\begin{array}[t]{#1}\end{array}$} and then i tried using \ar{F_{NET}&=ma \\ \dfrac{F_{NET}}{m}&=a} but I get an error. Any help on this ?

Code: Select all

\documentclass[fleqn]{article} 
\usepackage{amsfonts}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amstext}
\usepackage{amsthm}
\usepackage{array}
\usepackage{auto-pst-pdf}
\usepackage{bigstrut}
\usepackage{booktabs}
\usepackage{bpchem}
\usepackage{calc}
\usepackage{cancel}
\usepackage{chemfig}
\usepackage{chemmacros}
\usepackage[shortlabels,inline]{enumitem}
\usepackage{fix-cm}
\usepackage[T1]{fontenc}
\usepackage{fouridx}
\usepackage{fullpage} 
\usepackage[margin=1in]{geometry} 
\usepackage{graphics}
\usepackage{graphicx}
\usepackage[utf8]{inputenc}
\usepackage{lewis}
\usepackage{lmodern}
\usepackage{microtype}
\usepackage{makebox}
\usepackage[version=3]{mhchem}
\usepackage{multienum}
\usepackage{multirow}
\usepackage{nccboxes}
\usepackage{pbox}
\usepackage{pgfkeys}
\usepackage{pifont}
\usepackage{pst-math}
\usepackage{pst-node}
\usepackage{pst-plot}
\usepackage{pstricks}
\usepackage{tensor}
\usepackage{tikz}
\usetikzlibrary{matrix,calc}
\usepackage{textcomp}
\usepackage{type1cm}
\usepackage{ulem}
\usepackage{wasysym}
\setlength{\parindent}{0pt}
\setlength{\parskip}{0pt}
\setlength{\mathindent}{0pt}
\newlist{longenum}{enumerate}{6}
\setlist[longenum,1]{label=\arabic*.}
\setlist[longenum,2]{label=\alph*)}
\setlist[longenum,3]{label=\alph*)}
\setlist[longenum,4]{label=\alph*)}
\setlist[longenum,5]{label=\alph*)}
\setlist[longenum,6]{label=\alph*)}
\newcommand{\since}{\raisebox{0.56pt}{\rotatebox[origin=c]{180}{$\Large\wasytherefore$}}}
\newcommand{\thus}{\Large{\wasytherefore}}
\newcommand{\s}{\par\medskip}
\newcommand{\sm}{\par\smallskip}
\newcommand{\ssa}{\\ \addlinespace[\smallskipamount]}
\newcommand{\msa}{\\ \addlinespace[\medskipamount]}
\newcommand{\bsa}{\\ \addlinespace[\bigskipamount]}
\newcommand{\fk}[2]{\mbox{\smash{#1}\vphantom{#2}}}
\newlength{\cm}
\newcommand{\cmx}[2]{\settowidth{\cm}{$\ce{#2}$}\makebox[\cm]{$#1$}}
\newcommand{\ar}[1]{$\begin{array}[t]{#1}\end{array}$}
\allowdisplaybreaks
\pagestyle{empty}
\begin{document}
\begin{longenum}[nosep,widest,align=right,leftmargin=0cm]
\item \includegraphics{D1.eps}
$\begin{array}[t]{@{}l@{}l@{}}\begin{aligned}[t]\ce{m}&=\ce{110 kg} \\ \ce{F1}&=\ch{30.2 N} \\ \ce{$\theta$1}&=\SI{}{} \\ \ce{F2}&=\ch{40.4 N} \\ \ce{$\theta$2}&= \\ \ce{F3}&=\ch{55.8 N}\end{aligned}\end{array}$ \sm
$\begin{array}[t]{@{}l@{}l@{}}\begin{aligned}[t]\ce{F_{NET}}&=ma\end{aligned} & \begin{aligned}[t]\ce{F_{NET}}&=ma\end{aligned}\end{array}$ \sm
\ar{F_{NET}&=ma \\ \dfrac{F_{NET}}{m}&=a}
\end{longenum}
\end{document}
Last edited by ghostanime2001 on Mon Nov 26, 2012 9:44 pm, edited 2 times in total.

Recommended reading 2024:

LaTeXguide.org • LaTeX-Cookbook.net • TikZ.org

NEW: TikZ book now 40% off at Amazon.com for a short time.

cgnieder
Site Moderator
Posts: 2000
Joined: Sat Apr 16, 2011 7:27 pm

new command for an environment

Post by cgnieder »

There are two issues here. First you've put $...$ in the command definition and still used it in math mode. I would avoid that. The command is clearly meant for use in math mode so there's no need to include $ in the definition. Second {array} needs an argument where you specify the columns (just like {tabular}). I would suggest a definition like this:

Code: Select all

\documentclass{article}
\usepackage{amsmath}

% #1: column specs
% #2: array body
\newcommand{\ar}[2]{\begin{array}[t]{#1}#2\end{array}}

\begin{document}
\[
 \ar{ll}{ x & y \\ a & b }
\]
\end{document}
Regards
site moderator & package author
ghostanime2001
Posts: 402
Joined: Fri May 20, 2011 9:41 am

Re: new command for an environment

Post by ghostanime2001 »

thanks
Post Reply