TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm writing a paper in LaTeX with the IEEE style and when citing multiple references with \cite{ref_A,ref_B,ref_C}, it produces [1],[2],[3]. How can I change that to [1,2,3]?

share|improve this question

migrated from stackoverflow.com Feb 9 '12 at 18:56

This question came from our site for professional and enthusiast programmers.

Welcome to TeX.sx! Your question was migrated here from Stack Overflow. Please register on this site, too, and make sure that both accounts are associated with each other, otherwise you won't be able to comment on or accept answers or edit your question. – Werner Feb 9 '12 at 19:00
Does the the publication venue allow you to make this change to the standard IEEE style? – Toymakerii Feb 10 '12 at 3:40
Are you sure you want [1, 2, 3]? IEEE in fact needs [1]--[3]. – Ali Mehrizi Jun 16 '12 at 16:10

Assuming that you are using the Transactions style with

\documentclass[final]{IEEEtran} %or draft etc.

Using the following line in the preamble


and also using the house style of IEEEtran with


passed the IEEE check more than once.

share|improve this answer
Note that this does not generate [1,2,3] but [1]-[3] (which is good, though, as it is in line with the IEEE style guide). – luator Feb 2 at 15:02

Is your work meant for IEEE transactions? The IEEEtran class says:

Citations are made with the \cite command as usual. IEEEtran will produce citation numbers that are individually bracketed in IEEE style. (“[1], [5]” as opposed to the more common “[1, 5]” form.) The base IEEEtran does not sort or produce compressed “ranges” when there are three or more adjacent citation numbers. However, IEEEtran pre-defines some format control macros to facilitate easy use with Donald Arseneau’s cite.sty package. So, all an author has to do is to call cite.sty.

share|improve this answer

Not sure what marco package you're using, but if your bib style is something like "ieeetr" or "phaip".And it will works.


%\usepackage{mcite} Optional if you want mcite feature.
Insulator\cite{ref1,ref2} does not conduct electricity.

and mydata.bib is:

AUTHOR = "Zdzislaw Pawlak",
TITLE = "Rough sets",
JOURNAL = "International Journal of Computer Infomation Science",
YEAR = "1982",
volume = "5",
pages = "341-356",

AUTHOR = "Zdzislaw Pawlak Jr.",
TITLE = "Rough sets",
JOURNAL = "International Journal of Computer Infomation Science",
YEAR = "1982",
volume = "5",
pages = "341-356",

Here is example from a tutorial
from latex editor(In Chinese)

Input code


Tex output

And this is the example reference of phaip style

BTW, maybe you should go to the Tex stackexchange site for help.

share|improve this answer
Where did you get these images from? Please provide sources. – animuson Feb 9 '12 at 18:49

IEEE has redefined the \citepunct macro, which determines what is inserted between citations. You can see this by using the \citen command, which doesn't insert the surrounding brackets, instead of \cite.

You can redefine this back to the standard comma, penalty and thin space as follows:


I don't know if IEEE publication venues are okay with this change or not.

To control the appearance of three or more references, you may have to change the \citedash command as well. I haven't played with this, see the reference below for information about the \cite command.

Source: http://mirror.hmc.edu/ctan/macros/latex/contrib/cite/cite.pdf

share|improve this answer

go to IEEEtran.cls and replace \def\citepunct{],[} and \def\citedash{]--[} with \def\citepunct{,} and \def\citedash{--}, respectively. This is if you intend to use the IEEEtrans class in a custom citation format, understanding that it is not suitable for IEEE conferences.

share|improve this answer
You can use back ticks ' ' to highlight code – Andrew Oct 30 '14 at 19:36

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.