Skip to content

Commit

Permalink
Inserted keys are alphabetically ordered as well.
Browse files Browse the repository at this point in the history
  • Loading branch information
crsh committed Sep 7, 2016
1 parent 91068ae commit 9452331
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 6 deletions.
8 changes: 7 additions & 1 deletion R/insert_citation.R
Original file line number Diff line number Diff line change
Expand Up @@ -272,7 +272,13 @@ insert_citation <- function(bib_file = getOption("citr.bibliography_path"), use_
})

# Create citation based on current selection
current_key <- reactive({paste_citation_keys(input$selected_key, input$in_paren)})
current_key <- reactive({
if(length(input$selected_key) > 1 & input$in_paren) {
paste_citation_keys(input$selected_key[order(input$selected_key)], input$in_paren)
} else {
paste_citation_keys(input$selected_key, input$in_paren)
}
})
output$rendered_key <- renderText({if(!is.null(current_key())) current_key() else "No reference selected."})

new_entries <- reactive({
Expand Down
10 changes: 5 additions & 5 deletions R/md_cite.R
Original file line number Diff line number Diff line change
Expand Up @@ -44,10 +44,9 @@ md_cite <- function(
if(length(selected_entries) == 0) return(NULL)

# Print queried references
tmp <- lapply(selected_entries, function(y) {
reference <- paste_references(y)
cat("\t", reference, "\n")
})
pasted_references <- paste_references(selected_entries)

lapply(pasted_references, function(y) cat("\t", y, "\n"))
cat("\n")

# Add references to bib_file
Expand All @@ -56,19 +55,20 @@ md_cite <- function(
}

# Return citation keys
if(length(selected_entries) > 1) selected_entries <- selected_entries[order(pasted_references)]
paste_citation_keys(names(selected_entries), in_paren)
}


paste_citation_keys <- function(keys, in_paren = FALSE) {
if(!is.null(keys)) assert_that(is.character(keys)) else return(NULL)
assert_that(is.flag(in_paren))
n_keys <- length(keys)

if(in_paren) {
keys <- paste(keys, collapse = "; @")
paste0("[@", keys, "]")
} else {
n_keys <- length(keys)
if(n_keys == 2) {
keys <- paste(keys, collapse = " and @")
} else if(n_keys > 2) {
Expand Down

0 comments on commit 9452331

Please sign in to comment.